diff --git a/inventory/admin.py b/inventory/admin.py index aa460b2d..be161286 100644 --- a/inventory/admin.py +++ b/inventory/admin.py @@ -7,6 +7,7 @@ admin.site.register(models.Vendor) admin.site.register(models.Customer) admin.site.register(models.SaleQuotation) admin.site.register(models.SaleQuotationCar) +admin.site.register(models.SalesOrder) admin.site.register(models.Car) admin.site.register(models.CarFinance) admin.site.register(models.CarColors) @@ -15,6 +16,9 @@ admin.site.register(models.CustomCard) admin.site.register(models.CarSpecificationValue) admin.site.register(models.ExteriorColors) admin.site.register(models.InteriorColors) +admin.site.register(models.Subscription) +admin.site.register(models.SubscriptionPlan) +admin.site.register(models.SubscriptionUser) admin.site.register(models.CarLocation) admin.site.register(models.CarReservation) admin.site.register(models.Organization) @@ -59,18 +63,18 @@ class CarSeriesAdmin(admin.ModelAdmin): verbose_name = "Car Series" -@admin.register(models.CarTrim) -class CarTrimAdmin(admin.ModelAdmin): - list_display = ('name', - 'id_car_serie__name', - 'id_car_serie__id_car_model__name', - 'id_car_serie__id_car_model__id_car_make__name') - search_fields = ('name', 'arabic_name', 'id_car_serie__id_car_model__name') - list_filter = ('id_car_serie__id_car_model__id_car_make__is_sa_import', - 'id_car_serie__id_car_model__id_car_make__name') +# @admin.register(models.CarTrim) +# class CarTrimAdmin(admin.ModelAdmin): +# list_display = ('name', +# 'id_car_serie__name', +# 'id_car_serie__id_car_model__name', +# 'id_car_serie__id_car_model__id_car_make__name') +# search_fields = ('name', 'arabic_name', 'id_car_serie__id_car_model__name') +# list_filter = ('id_car_serie__id_car_model__id_car_make__is_sa_import', +# 'id_car_serie__id_car_model__id_car_make__name') - class Meta: - verbose_name = "Car Trim" +# class Meta: +# verbose_name = "Car Trim" @admin.register(models.CarSpecification) diff --git a/inventory/forms.py b/inventory/forms.py index c07c42e8..fab00634 100644 --- a/inventory/forms.py +++ b/inventory/forms.py @@ -26,6 +26,12 @@ import django_tables2 as tables from django.forms import formset_factory + + +class UserForm(forms.ModelForm): + class Meta: + model = Dealer + fields = ['name', 'arabic_name', 'phone_number', 'address','dealer_type'] # Dealer Form class DealerForm(forms.ModelForm): class Meta: diff --git a/inventory/migrations/0001_squashed_0013_merge_20241211_1620.py b/inventory/migrations/0001_squashed_0013_merge_20241211_1620.py new file mode 100644 index 00000000..3f22f1da --- /dev/null +++ b/inventory/migrations/0001_squashed_0013_merge_20241211_1620.py @@ -0,0 +1,349 @@ +# Generated by Django 4.2.17 on 2024-12-12 07:40 + +from decimal import Decimal +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import inventory.mixins +import phonenumber_field.modelfields + + +class Migration(migrations.Migration): + + replaces = [('inventory', '0001_initial'), ('inventory', '0002_remove_salequotationcar_financial_details_and_more'), ('inventory', '0003_remove_salequotationcar_administration_fee_and_more'), ('inventory', '0004_remove_carfinance_administration_vat_amount_and_more'), ('inventory', '0005_alter_carfinance_options_alter_carfinance_total'), ('inventory', '0006_alter_car_status'), ('inventory', '0007_salequotation_amount_salequotation_dealer_and_more'), ('inventory', '0008_carfinance_vat_amount'), ('inventory', '0009_alter_salequotation_amount'), ('inventory', '0010_alter_salequotation_dealer'), ('inventory', '0011_remove_salequotationcar_dealer'), ('inventory', '0012_remove_salequotationcar_price'), ('inventory', '0005_alter_carfinance_options_remove_carfinance_total'), ('inventory', '0013_merge_20241211_1620')] + + initial = True + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='Car', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('vin', models.CharField(max_length=17, unique=True, verbose_name='VIN')), + ('year', models.IntegerField(verbose_name='Year')), + ('status', models.CharField(choices=[('available', 'Available'), ('sold', 'Sold'), ('hold', 'Hold'), ('damaged', 'Damaged')], default='available', max_length=10, verbose_name='Status')), + ('stock_type', models.CharField(choices=[('new', 'New'), ('used', 'Used')], default='new', max_length=10, verbose_name='Stock Type')), + ('remarks', models.TextField(blank=True, null=True, verbose_name='Remarks')), + ('mileage', models.IntegerField(blank=True, null=True, verbose_name='Mileage')), + ('receiving_date', models.DateTimeField(verbose_name='Receiving Date')), + ], + options={ + 'verbose_name': 'Car', + 'verbose_name_plural': 'Cars', + }, + ), + migrations.CreateModel( + name='CarMake', + fields=[ + ('id_car_make', models.AutoField(primary_key=True, serialize=False)), + ('name', models.CharField(max_length=255)), + ('arabic_name', models.CharField(max_length=255)), + ('logo', models.ImageField(blank=True, null=True, upload_to='car_make', verbose_name='logo')), + ('is_sa_import', models.BooleanField(default=False)), + ], + options={ + 'verbose_name': 'Make', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.CreateModel( + name='ExteriorColors', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255, verbose_name='Name')), + ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), + ('rgb', models.CharField(blank=True, max_length=24, null=True, verbose_name='RGB')), + ], + options={ + 'verbose_name': 'Exterior Colors', + 'verbose_name_plural': 'Exterior Colors', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.CreateModel( + name='InteriorColors', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255, verbose_name='Name')), + ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), + ('rgb', models.CharField(blank=True, max_length=24, null=True, verbose_name='RGB')), + ], + options={ + 'verbose_name': 'Interior Colors', + 'verbose_name_plural': 'Interior Colors', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.CreateModel( + name='CarFinance', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('cost_price', models.DecimalField(decimal_places=2, max_digits=14, verbose_name='Cost Price')), + ('selling_price', models.DecimalField(decimal_places=2, max_digits=14, verbose_name='Selling Price')), + ('profit_margin', models.DecimalField(decimal_places=2, editable=False, max_digits=14, verbose_name='Profit Margin')), + ('discount_amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Discount Amount')), + ('registration_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Registration Fee')), + ('administration_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Administration Fee')), + ('transportation_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Transportation Fee')), + ('custom_card_fee', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=14, verbose_name='Custom Card Fee')), + ('vat_rate', models.DecimalField(decimal_places=2, default=Decimal('0.15'), max_digits=14, verbose_name='VAT Rate')), + ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='finances', to='inventory.car')), + ('vat_amount', models.DecimalField(decimal_places=2, default=2300, editable=False, max_digits=14, verbose_name='Vat Amount')), + ], + options={ + 'verbose_name': 'Car Financial Details', + }, + ), + migrations.AddField( + model_name='car', + name='id_car_make', + field=models.ForeignKey(blank=True, db_column='id_car_make', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmake', verbose_name='Make'), + ), + migrations.CreateModel( + name='CarModel', + fields=[ + ('id_car_model', models.AutoField(primary_key=True, serialize=False)), + ('name', models.CharField(max_length=255)), + ('arabic_name', models.CharField(max_length=255)), + ('id_car_make', models.ForeignKey(db_column='id_car_make', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmake')), + ], + options={ + 'verbose_name': 'Model', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.AddField( + model_name='car', + name='id_car_model', + field=models.ForeignKey(blank=True, db_column='id_car_model', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmodel', verbose_name='Model'), + ), + migrations.CreateModel( + name='CarRegistration', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('plate_number', models.IntegerField(verbose_name='Plate Number')), + ('text1', models.CharField(max_length=1, verbose_name='Text 1')), + ('text2', models.CharField(max_length=1, verbose_name='Text 2')), + ('text3', models.CharField(max_length=1, verbose_name='Text 3')), + ('registration_date', models.DateTimeField(verbose_name='Registration Date')), + ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='registrations', to='inventory.car', verbose_name='Car')), + ], + options={ + 'verbose_name': 'Registration', + 'verbose_name_plural': 'Registrations', + }, + ), + migrations.CreateModel( + name='CarSerie', + fields=[ + ('id_car_serie', models.AutoField(primary_key=True, serialize=False)), + ('name', models.CharField(max_length=255)), + ('arabic_name', models.CharField(max_length=255)), + ('id_car_model', models.ForeignKey(db_column='id_car_model', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carmodel')), + ], + options={ + 'verbose_name': 'Series', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.AddField( + model_name='car', + name='id_car_serie', + field=models.ForeignKey(blank=True, db_column='id_car_serie', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carserie', verbose_name='Series'), + ), + migrations.CreateModel( + name='CarSpecification', + fields=[ + ('id_car_specification', models.AutoField(primary_key=True, serialize=False)), + ('name', models.CharField(max_length=255)), + ('arabic_name', models.CharField(max_length=255)), + ('id_parent', models.ForeignKey(blank=True, db_column='id_parent', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carspecification')), + ], + options={ + 'verbose_name': 'Specification', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.CreateModel( + name='CarTrim', + fields=[ + ('id_car_trim', models.AutoField(primary_key=True, serialize=False)), + ('name', models.CharField(max_length=255)), + ('arabic_name', models.CharField(max_length=255)), + ('start_production_year', models.IntegerField(blank=True, null=True)), + ('end_production_year', models.IntegerField(blank=True, null=True)), + ('id_car_serie', models.ForeignKey(db_column='id_car_serie', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carserie')), + ], + options={ + 'verbose_name': 'Trim', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.CreateModel( + name='CarSpecificationValue', + fields=[ + ('id_car_specification_value', models.AutoField(primary_key=True, serialize=False)), + ('value', models.CharField(max_length=500)), + ('unit', models.CharField(blank=True, max_length=255, null=True)), + ('id_car_specification', models.ForeignKey(db_column='id_car_specification', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.carspecification')), + ('id_car_trim', models.ForeignKey(db_column='id_car_trim', on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.cartrim')), + ], + options={ + 'verbose_name': 'Specification Value', + }, + ), + migrations.AddField( + model_name='car', + name='id_car_trim', + field=models.ForeignKey(blank=True, db_column='id_car_trim', null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='inventory.cartrim', verbose_name='Trim'), + ), + migrations.CreateModel( + name='CustomCard', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('custom_number', models.CharField(max_length=255, verbose_name='Custom Number')), + ('custom_date', models.DateField(verbose_name='Custom Date')), + ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='custom_cards', to='inventory.car', verbose_name='Car')), + ], + options={ + 'verbose_name': 'Custom Card', + 'verbose_name_plural': 'Custom Cards', + }, + ), + migrations.CreateModel( + name='Dealer', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('crn', models.CharField(max_length=10, verbose_name='Commercial Registration Number')), + ('vrn', models.CharField(max_length=15, verbose_name='VAT Registration Number')), + ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), + ('name', models.CharField(max_length=255, verbose_name='English Name')), + ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', verbose_name='Phone Number')), + ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), + ('logo', models.ImageField(blank=True, null=True, upload_to='logos/users', verbose_name='Logo')), + ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='dealer', to=settings.AUTH_USER_MODEL)), + ], + options={ + 'verbose_name': 'Dealer', + 'verbose_name_plural': 'Dealers', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.CreateModel( + name='Customer', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('first_name', models.CharField(max_length=50, verbose_name='First Name')), + ('middle_name', models.CharField(blank=True, max_length=50, null=True, verbose_name='Middle Name')), + ('last_name', models.CharField(max_length=50, verbose_name='Last Name')), + ('email', models.EmailField(max_length=254, unique=True, verbose_name='Email')), + ('national_id', models.CharField(max_length=10, unique=True, verbose_name='National ID')), + ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', unique=True, verbose_name='Phone Number')), + ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), + ('created', models.DateTimeField(auto_now_add=True, verbose_name='Created')), + ('dealer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='customers', to='inventory.dealer')), + ], + options={ + 'verbose_name': 'Customer', + 'verbose_name_plural': 'Customers', + }, + ), + migrations.AddField( + model_name='car', + name='dealer', + field=models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, related_name='cars', to='inventory.dealer', verbose_name='Dealer'), + ), + migrations.CreateModel( + name='SaleQuotation', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('remarks', models.TextField(blank=True, null=True, verbose_name='Remarks')), + ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created At')), + ('customer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quotations', to='inventory.customer', verbose_name='Customer')), + ('status', models.CharField(choices=[('DRAFT', 'Draft'), ('CONFIRMED', 'Confirmed'), ('CANCELED', 'Canceled')], default='DRAFT', max_length=10, verbose_name='Status')), + ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated At')), + ('amount', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=10, verbose_name='Amount')), + ('dealer', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='sales', to='inventory.dealer')), + ], + ), + migrations.CreateModel( + name='Vendor', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('crn', models.CharField(max_length=10, unique=True, verbose_name='Commercial Registration Number')), + ('vrn', models.CharField(max_length=15, unique=True, verbose_name='VAT Registration Number')), + ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), + ('name', models.CharField(max_length=255, verbose_name='English Name')), + ('contact_person', models.CharField(max_length=100, verbose_name='Contact Person')), + ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', verbose_name='Phone Number')), + ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), + ('logo', models.ImageField(blank=True, null=True, upload_to='logos/vendors', verbose_name='Logo')), + ('dealer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='vendors', to='inventory.dealer')), + ], + options={ + 'verbose_name': 'Vendor', + 'verbose_name_plural': 'Vendors', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + migrations.AddField( + model_name='car', + name='vendor', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='cars', to='inventory.vendor', verbose_name='Vendor'), + ), + migrations.CreateModel( + name='CarReservation', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('reserved_at', models.DateTimeField(auto_now_add=True)), + ('reserved_until', models.DateTimeField()), + ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reservations', to='inventory.car')), + ('reserved_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + options={ + 'ordering': ['-reserved_at'], + 'unique_together': {('car', 'reserved_until')}, + }, + ), + migrations.CreateModel( + name='CarColors', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='colors', to='inventory.car')), + ('exterior', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='colors', to='inventory.exteriorcolors')), + ('interior', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='colors', to='inventory.interiorcolors')), + ], + options={ + 'verbose_name': 'Color', + 'verbose_name_plural': 'Colors', + 'unique_together': {('car', 'exterior', 'interior')}, + }, + ), + migrations.CreateModel( + name='SalesOrder', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created At')), + ('total_amount', models.DecimalField(decimal_places=2, max_digits=14, verbose_name='Total Amount')), + ('quotation', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='sales_order', to='inventory.salequotation', verbose_name='Quotation')), + ], + ), + migrations.AlterField( + model_name='car', + name='status', + field=models.CharField(choices=[('available', 'Available'), ('sold', 'Sold'), ('hold', 'Hold'), ('damaged', 'Damaged'), ('reserved', 'Reserved')], default='available', max_length=10, verbose_name='Status'), + ), + migrations.CreateModel( + name='SaleQuotationCar', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('car', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='inventory.car', verbose_name='Car')), + ('quotation', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quotation_cars', to='inventory.salequotation', verbose_name='Quotation')), + ('quantity', models.PositiveIntegerField(default=1, verbose_name='Quantity')), + ], + ), + ] diff --git a/inventory/migrations/0013_merge_20241211_1620.py b/inventory/migrations/0013_merge_20241211_1620.py new file mode 100644 index 00000000..0bdb9146 --- /dev/null +++ b/inventory/migrations/0013_merge_20241211_1620.py @@ -0,0 +1,14 @@ +# Generated by Django 4.2.17 on 2024-12-11 13:20 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0005_alter_carfinance_options_remove_carfinance_total'), + ('inventory', '0012_remove_salequotationcar_price'), + ] + + operations = [ + ] diff --git a/inventory/migrations/0014_alter_carfinance_options_and_more.py b/inventory/migrations/0014_alter_carfinance_options_and_more.py index 8bbe1c3d..14f69ec6 100644 --- a/inventory/migrations/0014_alter_carfinance_options_and_more.py +++ b/inventory/migrations/0014_alter_carfinance_options_and_more.py @@ -26,6 +26,10 @@ class Migration(migrations.Migration): model_name='carfinance', name='vat_rate', ), + # migrations.RemoveField( + # model_name='carfinance', + # name='total', + # ), migrations.AddField( model_name='carfinance', name='total', diff --git a/inventory/migrations/0014_carfinance_total.py b/inventory/migrations/0014_carfinance_total.py new file mode 100644 index 00000000..cb9704a6 --- /dev/null +++ b/inventory/migrations/0014_carfinance_total.py @@ -0,0 +1,23 @@ +# Generated by Django 4.2.17 on 2024-12-11 13:26 + +from decimal import Decimal +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0013_merge_20241211_1620'), + ] + + operations = [ + # migrations.RemoveField( + # model_name='carfinance', + # name='total', + # ), + migrations.AddField( + model_name='carfinance', + name='total', + field=models.DecimalField(blank=True, decimal_places=2, default=Decimal('0.00'), max_digits=14, null=True), + ), + ] diff --git a/inventory/migrations/0017_merge_20241212_1035.py b/inventory/migrations/0017_merge_20241212_1035.py new file mode 100644 index 00000000..306fb636 --- /dev/null +++ b/inventory/migrations/0017_merge_20241212_1035.py @@ -0,0 +1,14 @@ +# Generated by Django 4.2.17 on 2024-12-12 07:35 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0014_carfinance_total'), + ('inventory', '0016_alter_carfinance_car_alter_customcard_car'), + ] + + operations = [ + ] diff --git a/inventory/migrations/0018_alter_carfinance_options_and_more.py b/inventory/migrations/0018_alter_carfinance_options_and_more.py new file mode 100644 index 00000000..2fb98c01 --- /dev/null +++ b/inventory/migrations/0018_alter_carfinance_options_and_more.py @@ -0,0 +1,68 @@ +# Generated by Django 4.2.17 on 2024-12-15 13:20 + +from decimal import Decimal +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('inventory', '0017_merge_20241212_1035'), + ] + + operations = [ + migrations.AlterModelOptions( + name='carfinance', + options={'verbose_name': 'Car Financial Details'}, + ), + migrations.AlterModelOptions( + name='carreservation', + options={'ordering': ['-reserved_at']}, + ), + migrations.AddField( + model_name='carfinance', + name='vat_rate', + field=models.DecimalField(decimal_places=2, default=Decimal('0.15'), max_digits=14, verbose_name='VAT Rate'), + ), + migrations.AlterField( + model_name='carfinance', + name='car', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='finances', to='inventory.car'), + ), + migrations.AlterField( + model_name='carfinance', + name='vat_amount', + field=models.DecimalField(decimal_places=2, editable=False, max_digits=14, verbose_name='Vat Amount'), + ), + migrations.AlterField( + model_name='carreservation', + name='car', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reservations', to='inventory.car'), + ), + migrations.AlterField( + model_name='carreservation', + name='reserved_at', + field=models.DateTimeField(auto_now_add=True), + ), + migrations.AlterField( + model_name='carreservation', + name='reserved_by', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), + ), + migrations.AlterField( + model_name='carreservation', + name='reserved_until', + field=models.DateTimeField(), + ), + migrations.AlterField( + model_name='customcard', + name='car', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='custom_cards', to='inventory.car', verbose_name='Car'), + ), + migrations.DeleteModel( + name='CarLocation', + ), + ] diff --git a/inventory/migrations/0019_subdealer.py b/inventory/migrations/0019_subdealer.py new file mode 100644 index 00000000..32d1cf4b --- /dev/null +++ b/inventory/migrations/0019_subdealer.py @@ -0,0 +1,32 @@ +# Generated by Django 4.2.17 on 2024-12-15 14:47 + +from django.db import migrations, models +import django.db.models.deletion +import inventory.mixins +import phonenumber_field.modelfields + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0018_alter_carfinance_options_and_more'), + ] + + operations = [ + migrations.CreateModel( + name='SubDealer', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('arabic_name', models.CharField(max_length=255, verbose_name='Arabic Name')), + ('name', models.CharField(max_length=255, verbose_name='English Name')), + ('phone_number', phonenumber_field.modelfields.PhoneNumberField(max_length=128, region='SA', verbose_name='Phone Number')), + ('address', models.CharField(blank=True, max_length=200, null=True, verbose_name='Address')), + ('dealer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='subdealers', to='inventory.dealer')), + ], + options={ + 'verbose_name': 'SubDealer', + 'verbose_name_plural': 'SubDealers', + }, + bases=(models.Model, inventory.mixins.LocalizedNameMixin), + ), + ] diff --git a/inventory/migrations/0020_subdealer_dealer_type.py b/inventory/migrations/0020_subdealer_dealer_type.py new file mode 100644 index 00000000..aee5c159 --- /dev/null +++ b/inventory/migrations/0020_subdealer_dealer_type.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.17 on 2024-12-15 14:53 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0019_subdealer'), + ] + + operations = [ + migrations.AddField( + model_name='subdealer', + name='dealer_type', + field=models.CharField(choices=[('Inventory', 'Inventory'), ('Accountent', 'Accountent'), ('sales', 'Sales')], default='Inventory', max_length=255, verbose_name='Dealer Type'), + ), + ] diff --git a/inventory/migrations/0021_subdealer_user.py b/inventory/migrations/0021_subdealer_user.py new file mode 100644 index 00000000..bb538c3f --- /dev/null +++ b/inventory/migrations/0021_subdealer_user.py @@ -0,0 +1,22 @@ +# Generated by Django 4.2.17 on 2024-12-16 09:02 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('inventory', '0020_subdealer_dealer_type'), + ] + + operations = [ + migrations.AddField( + model_name='subdealer', + name='user', + field=models.OneToOneField(default=1, on_delete=django.db.models.deletion.CASCADE, related_name='subdealer', to=settings.AUTH_USER_MODEL), + preserve_default=False, + ), + ] diff --git a/inventory/migrations/0022_dealer_dealer_type_dealer_parent_dealer_and_more.py b/inventory/migrations/0022_dealer_dealer_type_dealer_parent_dealer_and_more.py new file mode 100644 index 00000000..dd64d5a1 --- /dev/null +++ b/inventory/migrations/0022_dealer_dealer_type_dealer_parent_dealer_and_more.py @@ -0,0 +1,27 @@ +# Generated by Django 4.2.17 on 2024-12-16 09:31 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0021_subdealer_user'), + ] + + operations = [ + migrations.AddField( + model_name='dealer', + name='dealer_type', + field=models.CharField(choices=[('Inventory', 'Inventory'), ('Accountent', 'Accountent'), ('sales', 'Sales')], default='Inventory', max_length=255, verbose_name='Dealer Type'), + ), + migrations.AddField( + model_name='dealer', + name='parent_dealer', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='inventory.dealer'), + ), + migrations.DeleteModel( + name='SubDealer', + ), + ] diff --git a/inventory/migrations/0023_alter_dealer_dealer_type_alter_dealer_parent_dealer.py b/inventory/migrations/0023_alter_dealer_dealer_type_alter_dealer_parent_dealer.py new file mode 100644 index 00000000..2954c9df --- /dev/null +++ b/inventory/migrations/0023_alter_dealer_dealer_type_alter_dealer_parent_dealer.py @@ -0,0 +1,24 @@ +# Generated by Django 4.2.17 on 2024-12-16 09:33 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0022_dealer_dealer_type_dealer_parent_dealer_and_more'), + ] + + operations = [ + migrations.AlterField( + model_name='dealer', + name='dealer_type', + field=models.CharField(choices=[('Owner', 'Owner'), ('Inventory', 'Inventory'), ('Accountent', 'Accountent'), ('sales', 'Sales')], default='Owner', max_length=255, verbose_name='Dealer Type'), + ), + migrations.AlterField( + model_name='dealer', + name='parent_dealer', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='inventory.dealer', verbose_name='Parent Dealer'), + ), + ] diff --git a/inventory/migrations/0024_alter_dealer_crn_alter_dealer_parent_dealer_and_more.py b/inventory/migrations/0024_alter_dealer_crn_alter_dealer_parent_dealer_and_more.py new file mode 100644 index 00000000..43f004ae --- /dev/null +++ b/inventory/migrations/0024_alter_dealer_crn_alter_dealer_parent_dealer_and_more.py @@ -0,0 +1,29 @@ +# Generated by Django 4.2.17 on 2024-12-16 11:31 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0023_alter_dealer_dealer_type_alter_dealer_parent_dealer'), + ] + + operations = [ + migrations.AlterField( + model_name='dealer', + name='crn', + field=models.CharField(blank=True, max_length=10, null=True, verbose_name='Commercial Registration Number'), + ), + migrations.AlterField( + model_name='dealer', + name='parent_dealer', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='sub_dealers', to='inventory.dealer', verbose_name='Parent Dealer'), + ), + migrations.AlterField( + model_name='dealer', + name='vrn', + field=models.CharField(blank=True, max_length=15, null=True, verbose_name='VAT Registration Number'), + ), + ] diff --git a/inventory/migrations/0025_subscription_subscriptionplan_subscriptionuser_and_more.py b/inventory/migrations/0025_subscription_subscriptionplan_subscriptionuser_and_more.py new file mode 100644 index 00000000..36cbf5e5 --- /dev/null +++ b/inventory/migrations/0025_subscription_subscriptionplan_subscriptionuser_and_more.py @@ -0,0 +1,49 @@ +# Generated by Django 4.2.17 on 2024-12-16 15:02 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('inventory', '0024_alter_dealer_crn_alter_dealer_parent_dealer_and_more'), + ] + + operations = [ + migrations.CreateModel( + name='Subscription', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('plan', models.CharField(max_length=255)), + ('start_date', models.DateField()), + ('end_date', models.DateField()), + ('max_users', models.IntegerField()), + ], + ), + migrations.CreateModel( + name='SubscriptionPlan', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255)), + ('description', models.TextField()), + ('price', models.DecimalField(decimal_places=2, max_digits=10)), + ('max_users', models.IntegerField()), + ], + ), + migrations.CreateModel( + name='SubscriptionUser', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('subscription', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='inventory.subscription')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.AddField( + model_name='subscription', + name='users', + field=models.ManyToManyField(through='inventory.SubscriptionUser', to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/inventory/migrations/0026_subscription_is_active.py b/inventory/migrations/0026_subscription_is_active.py new file mode 100644 index 00000000..f7b9ba28 --- /dev/null +++ b/inventory/migrations/0026_subscription_is_active.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.17 on 2024-12-16 15:22 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0025_subscription_subscriptionplan_subscriptionuser_and_more'), + ] + + operations = [ + migrations.AddField( + model_name='subscription', + name='is_active', + field=models.BooleanField(default=True), + ), + ] diff --git a/inventory/migrations/0027_alter_dealer_options.py b/inventory/migrations/0027_alter_dealer_options.py new file mode 100644 index 00000000..f1febd60 --- /dev/null +++ b/inventory/migrations/0027_alter_dealer_options.py @@ -0,0 +1,17 @@ +# Generated by Django 4.2.17 on 2024-12-17 09:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0026_subscription_is_active'), + ] + + operations = [ + migrations.AlterModelOptions( + name='dealer', + options={'permissions': [('can_edit_dealer_type', 'Can edit dealer type')], 'verbose_name': 'Dealer', 'verbose_name_plural': 'Dealers'}, + ), + ] diff --git a/inventory/migrations/0028_alter_dealer_options.py b/inventory/migrations/0028_alter_dealer_options.py new file mode 100644 index 00000000..4221e635 --- /dev/null +++ b/inventory/migrations/0028_alter_dealer_options.py @@ -0,0 +1,17 @@ +# Generated by Django 4.2.17 on 2024-12-17 09:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('inventory', '0027_alter_dealer_options'), + ] + + operations = [ + migrations.AlterModelOptions( + name='dealer', + options={'permissions': [('change_dealer_type', 'Can change dealer type')], 'verbose_name': 'Dealer', 'verbose_name_plural': 'Dealers'}, + ), + ] diff --git a/inventory/mixins.py b/inventory/mixins.py index 50dde6d3..b5b5b71e 100644 --- a/inventory/mixins.py +++ b/inventory/mixins.py @@ -32,3 +32,12 @@ class LocalizedNameMixin: return getattr(self, 'arabic_name', None) return getattr(self, 'name', None) + +class AddDealerInstanceMixin: + def form_valid(self, form): + if form.is_valid(): + form.instance.dealer = self.request.user.dealer.get_parent_or_self + form.save() + return super().form_valid(form) + else: + return form.errors \ No newline at end of file diff --git a/inventory/models.py b/inventory/models.py index 97249ed2..5f8a8e13 100644 --- a/inventory/models.py +++ b/inventory/models.py @@ -15,7 +15,6 @@ from django_ledger.models import ( UnitOfMeasureModel, CustomerModel, ItemModelQuerySet, - ) from django.db.models import Sum from decimal import Decimal, InvalidOperation @@ -31,7 +30,7 @@ class CarMake(models.Model, LocalizedNameMixin): id_car_make = models.AutoField(primary_key=True) name = models.CharField(max_length=255) arabic_name = models.CharField(max_length=255) - logo = models.ImageField(_('logo'), upload_to='car_make', blank=True, null=True) + logo = models.ImageField(_("logo"), upload_to="car_make", blank=True, null=True) is_sa_import = models.BooleanField(default=False) def __str__(self): @@ -43,7 +42,7 @@ class CarMake(models.Model, LocalizedNameMixin): class CarModel(models.Model, LocalizedNameMixin): id_car_model = models.AutoField(primary_key=True) - id_car_make = models.ForeignKey(CarMake, models.DO_NOTHING, db_column='id_car_make') + id_car_make = models.ForeignKey(CarMake, models.DO_NOTHING, db_column="id_car_make") name = models.CharField(max_length=255) arabic_name = models.CharField(max_length=255) @@ -56,7 +55,9 @@ class CarModel(models.Model, LocalizedNameMixin): class CarSerie(models.Model, LocalizedNameMixin): id_car_serie = models.AutoField(primary_key=True) - id_car_model = models.ForeignKey(CarModel, models.DO_NOTHING, db_column='id_car_model') + id_car_model = models.ForeignKey( + CarModel, models.DO_NOTHING, db_column="id_car_model" + ) name = models.CharField(max_length=255) arabic_name = models.CharField(max_length=255) year_begin = models.IntegerField(blank=True, null=True) @@ -71,7 +72,9 @@ class CarSerie(models.Model, LocalizedNameMixin): class CarTrim(models.Model, LocalizedNameMixin): id_car_trim = models.AutoField(primary_key=True) - id_car_serie = models.ForeignKey(CarSerie, models.DO_NOTHING, db_column='id_car_serie') + id_car_serie = models.ForeignKey( + CarSerie, models.DO_NOTHING, db_column="id_car_serie" + ) name = models.CharField(max_length=255) arabic_name = models.CharField(max_length=255) start_production_year = models.IntegerField(blank=True, null=True) @@ -89,7 +92,9 @@ class CarSpecification(models.Model, LocalizedNameMixin): id_car_specification = models.AutoField(primary_key=True) name = models.CharField(max_length=255) arabic_name = models.CharField(max_length=255) - id_parent = models.ForeignKey('self', models.DO_NOTHING, db_column='id_parent', blank=True, null=True) + id_parent = models.ForeignKey( + "self", models.DO_NOTHING, db_column="id_parent", blank=True, null=True + ) def __str__(self): return self.name @@ -100,8 +105,10 @@ class CarSpecification(models.Model, LocalizedNameMixin): class CarSpecificationValue(models.Model): id_car_specification_value = models.AutoField(primary_key=True) - id_car_trim = models.ForeignKey(CarTrim, models.DO_NOTHING, db_column='id_car_trim') - id_car_specification = models.ForeignKey(CarSpecification, models.DO_NOTHING, db_column='id_car_specification') + id_car_trim = models.ForeignKey(CarTrim, models.DO_NOTHING, db_column="id_car_trim") + id_car_specification = models.ForeignKey( + CarSpecification, models.DO_NOTHING, db_column="id_car_specification" + ) value = models.CharField(max_length=500) unit = models.CharField(max_length=255, blank=True, null=True) @@ -114,25 +121,29 @@ class CarSpecificationValue(models.Model): # Car Model class CarStatusChoices(models.TextChoices): - AVAILABLE = 'available', _('Available') - SOLD = 'sold', _('Sold') - HOLD = 'hold', _('Hold') - DAMAGED = 'damaged', _('Damaged') - RESERVED = 'reserved', _('Reserved') + AVAILABLE = "available", _("Available") + SOLD = "sold", _("Sold") + HOLD = "hold", _("Hold") + DAMAGED = "damaged", _("Damaged") + RESERVED = "reserved", _("Reserved") class CarStockTypeChoices(models.TextChoices): - NEW = 'new', _('New') - USED = 'used', _('Used') + NEW = "new", _("New") + USED = "used", _("Used") + + +class DEALER_TYPES(models.TextChoices): + Owner = "Owner", _("Owner") + Inventory = "Inventory", _("Inventory") + Accountent = "Accountent", _("Accountent") + Sales = "sales", _("Sales") class Car(models.Model): vin = models.CharField(max_length=17, unique=True, verbose_name=_("VIN")) dealer = models.ForeignKey( - "Dealer", - models.DO_NOTHING, - related_name='cars', - verbose_name=_("Dealer") + "Dealer", models.DO_NOTHING, related_name="cars", verbose_name=_("Dealer") ) vendor = models.ForeignKey( @@ -140,53 +151,53 @@ class Car(models.Model): models.DO_NOTHING, null=True, blank=True, - related_name='cars', - verbose_name=_("Vendor") + related_name="cars", + verbose_name=_("Vendor"), ) id_car_make = models.ForeignKey( CarMake, models.DO_NOTHING, - db_column='id_car_make', + db_column="id_car_make", null=True, blank=True, - verbose_name=_("Make") + verbose_name=_("Make"), ) id_car_model = models.ForeignKey( CarModel, models.DO_NOTHING, - db_column='id_car_model', + db_column="id_car_model", null=True, blank=True, - verbose_name=_("Model") + verbose_name=_("Model"), ) year = models.IntegerField(verbose_name=_("Year")) id_car_serie = models.ForeignKey( CarSerie, models.DO_NOTHING, - db_column='id_car_serie', + db_column="id_car_serie", null=True, blank=True, - verbose_name=_("Series") + verbose_name=_("Series"), ) id_car_trim = models.ForeignKey( CarTrim, models.DO_NOTHING, - db_column='id_car_trim', + db_column="id_car_trim", null=True, blank=True, - verbose_name=_("Trim") + verbose_name=_("Trim"), ) status = models.CharField( max_length=10, - choices=CarStatusChoices, + choices=CarStatusChoices.choices, default=CarStatusChoices.AVAILABLE, - verbose_name=_("Status") + verbose_name=_("Status"), ) stock_type = models.CharField( max_length=10, - choices=CarStockTypeChoices, + choices=CarStockTypeChoices.choices, default=CarStockTypeChoices.NEW, - verbose_name=_("Stock Type") + verbose_name=_("Stock Type"), ) remarks = models.TextField(blank=True, null=True, verbose_name=_("Remarks")) mileage = models.IntegerField(blank=True, null=True, verbose_name=_("Mileage")) @@ -404,14 +415,18 @@ class InteriorColors(models.Model, LocalizedNameMixin): # Colors Model class CarColors(models.Model): - car = models.ForeignKey('Car', on_delete=models.CASCADE, related_name='colors') - exterior = models.ForeignKey('ExteriorColors', on_delete=models.CASCADE, related_name='colors') - interior = models.ForeignKey('InteriorColors', on_delete=models.CASCADE, related_name='colors') + car = models.ForeignKey("Car", on_delete=models.CASCADE, related_name="colors") + exterior = models.ForeignKey( + "ExteriorColors", on_delete=models.CASCADE, related_name="colors" + ) + interior = models.ForeignKey( + "InteriorColors", on_delete=models.CASCADE, related_name="colors" + ) class Meta: verbose_name = _("Color") verbose_name_plural = _("Colors") - unique_together = ('car', 'exterior', 'interior') + unique_together = ("car", "exterior", "interior") def __str__(self): return f"{self.car} ({self.exterior.name}) ({self.interior.name})" @@ -482,7 +497,12 @@ class CarLocation(models.Model): # Car Registration Model class CarRegistration(models.Model): - car = models.ForeignKey(Car, on_delete=models.CASCADE, related_name='registrations', verbose_name=_("Car")) + car = models.ForeignKey( + Car, + on_delete=models.CASCADE, + related_name="registrations", + verbose_name=_("Car"), + ) plate_number = models.IntegerField(verbose_name=_("Plate Number")) text1 = models.CharField(max_length=1, verbose_name=_("Text 1")) text2 = models.CharField(max_length=1, verbose_name=_("Text 2")) @@ -505,37 +525,108 @@ class TimestampedModel(models.Model): class Meta: abstract = True - +#subscription +class Subscription(models.Model): + plan = models.CharField(max_length=255) # e.g. "basic", "premium" + start_date = models.DateField() + end_date = models.DateField() + max_users = models.IntegerField() # maximum number of users per account + users = models.ManyToManyField(User, through='SubscriptionUser') # many-to-many relationship with User model + is_active = models.BooleanField(default=True) + def __str__(self): + return self.plan +class SubscriptionUser(models.Model): + subscription = models.ForeignKey(Subscription, on_delete=models.CASCADE) + user = models.ForeignKey(User, on_delete=models.CASCADE) + def __str__(self): + return f"{self.subscription} - {self.user}" + +class SubscriptionPlan(models.Model): + name = models.CharField(max_length=255) + description = models.TextField() + price = models.DecimalField(max_digits=10, decimal_places=2) + max_users = models.IntegerField() # maximum number of users per account + def __str__(self): + return f"{self.name} - {self.price}" # Dealer Model class Dealer(models.Model, LocalizedNameMixin): - user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='dealer') - crn = models.CharField(max_length=10, verbose_name=_("Commercial Registration Number")) - vrn = models.CharField(max_length=15, verbose_name=_("VAT Registration Number")) + user = models.OneToOneField(User, on_delete=models.CASCADE, related_name="dealer") + crn = models.CharField( + max_length=10, verbose_name=_("Commercial Registration Number"),null=True,blank=True + ) + vrn = models.CharField(max_length=15, verbose_name=_("VAT Registration Number"),null=True,blank=True) arabic_name = models.CharField(max_length=255, verbose_name=_("Arabic Name")) name = models.CharField(max_length=255, verbose_name=_("English Name")) - phone_number = PhoneNumberField(region='SA', verbose_name=_("Phone Number")) - address = models.CharField(max_length=200, blank=True, null=True, verbose_name=_("Address")) - logo = models.ImageField(upload_to="logos/users", blank=True, null=True, verbose_name=_("Logo")) + phone_number = PhoneNumberField(region="SA", verbose_name=_("Phone Number")) + address = models.CharField( + max_length=200, blank=True, null=True, verbose_name=_("Address") + ) + logo = models.ImageField( + upload_to="logos/users", blank=True, null=True, verbose_name=_("Logo") + ) + parent_dealer = models.ForeignKey( + "self", + on_delete=models.SET_NULL, + blank=True, + null=True, + verbose_name=_("Parent Dealer"), + related_name="sub_dealers", + ) + dealer_type = models.CharField( + max_length=255, + choices=DEALER_TYPES.choices, + verbose_name=_("Dealer Type"), + default=DEALER_TYPES.Owner, + ) + @property + def get_active_plan(self): + try: + return self.user.subscription_set.filter(is_active=True).first() + except SubscriptionPlan.DoesNotExist: + return None class Meta: verbose_name = _("Dealer") - verbose_name_plural = _("Dealers") + verbose_name_plural = _("Dealers") + permissions = [ + ('change_dealer_type', 'Can change dealer type'), + ] def __str__(self): return self.name - + + @property + def get_sub_dealers(self): + if self.dealer_type == "Owner": + return self.sub_dealers.all() + return None + + @property + def is_parent(self): + return self.dealer_type == "Owner" + @property + def get_parent_or_self(self): + return self.parent_dealer if self.parent_dealer else self # Vendor Model class Vendor(models.Model, LocalizedNameMixin): - dealer = models.ForeignKey(Dealer, on_delete=models.CASCADE, related_name='vendors') - crn = models.CharField(max_length=10, unique=True, verbose_name=_("Commercial Registration Number")) - vrn = models.CharField(max_length=15, unique=True, verbose_name=_("VAT Registration Number")) + dealer = models.ForeignKey(Dealer, on_delete=models.CASCADE, related_name="vendors") + crn = models.CharField( + max_length=10, unique=True, verbose_name=_("Commercial Registration Number") + ) + vrn = models.CharField( + max_length=15, unique=True, verbose_name=_("VAT Registration Number") + ) arabic_name = models.CharField(max_length=255, verbose_name=_("Arabic Name")) name = models.CharField(max_length=255, verbose_name=_("English Name")) contact_person = models.CharField(max_length=100, verbose_name=_("Contact Person")) - phone_number = PhoneNumberField(region='SA', verbose_name=_("Phone Number")) - address = models.CharField(max_length=200, blank=True, null=True, verbose_name=_("Address")) - logo = models.ImageField(upload_to="logos/vendors", blank=True, null=True, verbose_name=_("Logo")) + phone_number = PhoneNumberField(region="SA", verbose_name=_("Phone Number")) + address = models.CharField( + max_length=200, blank=True, null=True, verbose_name=_("Address") + ) + logo = models.ImageField( + upload_to="logos/vendors", blank=True, null=True, verbose_name=_("Logo") + ) class Meta: verbose_name = _("Vendor") @@ -547,14 +638,24 @@ class Vendor(models.Model, LocalizedNameMixin): # Customer Model class Customer(models.Model): - dealer = models.ForeignKey(Dealer, on_delete=models.CASCADE, related_name='customers') + dealer = models.ForeignKey( + Dealer, on_delete=models.CASCADE, related_name="customers" + ) first_name = models.CharField(max_length=50, verbose_name=_("First Name")) - middle_name = models.CharField(max_length=50, blank=True, null=True, verbose_name=_("Middle Name")) + middle_name = models.CharField( + max_length=50, blank=True, null=True, verbose_name=_("Middle Name") + ) last_name = models.CharField(max_length=50, verbose_name=_("Last Name")) email = models.EmailField(unique=True, verbose_name=_("Email")) - national_id = models.CharField(max_length=10, unique=True, verbose_name=_("National ID")) - phone_number = PhoneNumberField(region='SA', unique=True, verbose_name=_("Phone Number")) - address = models.CharField(max_length=200, blank=True, null=True, verbose_name=_("Address")) + national_id = models.CharField( + max_length=10, unique=True, verbose_name=_("National ID") + ) + phone_number = PhoneNumberField( + region="SA", unique=True, verbose_name=_("Phone Number") + ) + address = models.CharField( + max_length=200, blank=True, null=True, verbose_name=_("Address") + ) created = models.DateTimeField(auto_now_add=True, verbose_name=_("Created")) class Meta: @@ -562,7 +663,7 @@ class Customer(models.Model): verbose_name_plural = _("Customers") def __str__(self): - middle = f" {self.middle_name}" if self.middle_name else '' + middle = f" {self.middle_name}" if self.middle_name else "" return f"{self.first_name}{middle} {self.last_name}" @property @@ -610,11 +711,25 @@ class SaleQuotation(models.Model): ("CONFIRMED", _("Confirmed")), ("CANCELED", _("Canceled")), ] - dealer = models.ForeignKey(Dealer, on_delete=models.CASCADE, related_name='sales', null=True) - customer = models.ForeignKey(Customer, on_delete=models.CASCADE, related_name="quotations", verbose_name=_("Customer")) - amount = models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=10, verbose_name=_("Amount")) + dealer = models.ForeignKey( + Dealer, on_delete=models.CASCADE, related_name="sales", null=True + ) + customer = models.ForeignKey( + Customer, + on_delete=models.CASCADE, + related_name="quotations", + verbose_name=_("Customer"), + ) + amount = models.DecimalField( + decimal_places=2, + default=Decimal("0.00"), + max_digits=10, + verbose_name=_("Amount"), + ) remarks = models.TextField(blank=True, null=True, verbose_name=_("Remarks")) - status = models.CharField(max_length=10, choices=STATUS_CHOICES, default="DRAFT", verbose_name=_("Status")) + status = models.CharField( + max_length=10, choices=STATUS_CHOICES, default="DRAFT", verbose_name=_("Status") + ) created_at = models.DateTimeField(auto_now_add=True, verbose_name=_("Created At")) updated_at = models.DateTimeField(auto_now=True, verbose_name=_("Updated At")) @@ -646,7 +761,7 @@ class SaleQuotationCar(models.Model): SaleQuotation, on_delete=models.CASCADE, related_name="quotation_cars", - verbose_name=_("Quotation") + verbose_name=_("Quotation"), ) car = models.ForeignKey( Car, @@ -690,11 +805,16 @@ class SaleQuotationCar(models.Model): class SalesOrder(models.Model): - quotation = models.OneToOneField(SaleQuotation, on_delete=models.CASCADE, related_name="sales_order", verbose_name=_("Quotation")) + quotation = models.OneToOneField( + SaleQuotation, + on_delete=models.CASCADE, + related_name="sales_order", + verbose_name=_("Quotation"), + ) created_at = models.DateTimeField(auto_now_add=True, verbose_name=_("Created At")) - total_amount = models.DecimalField(max_digits=14, decimal_places=2, verbose_name=_("Total Amount")) + total_amount = models.DecimalField( + max_digits=14, decimal_places=2, verbose_name=_("Total Amount") + ) def __str__(self): return f"Sales Order #{self.id} from Quotation #{self.quotation.id}" - - diff --git a/inventory/signals.py b/inventory/signals.py index 2b6bd5fb..50242417 100644 --- a/inventory/signals.py +++ b/inventory/signals.py @@ -1,6 +1,6 @@ from random import randint -from django.db.models.signals import post_save, post_delete +from django.db.models.signals import post_save, post_delete,pre_delete from django.dispatch import receiver from django_ledger.models import (EntityModel, VendorModel, @@ -15,6 +15,11 @@ from django.utils.translation import gettext_lazy as _ from . import models +@receiver(pre_delete, sender=models.Dealer) +def remove_user_account(sender, instance, **kwargs): + user = instance.user + if user: + user.delete() @receiver(post_save, sender=models.Car) def create_car_location(sender, instance, created, **kwargs): """ diff --git a/inventory/urls.py b/inventory/urls.py index 5104b5c6..4c261a14 100644 --- a/inventory/urls.py +++ b/inventory/urls.py @@ -1,6 +1,9 @@ from django.urls import path from . import views from allauth.account import views as allauth_views +from django.conf.urls import ( +handler400, handler403, handler404, handler500 +) urlpatterns = [ @@ -40,7 +43,7 @@ urlpatterns = [ path('vendors//', views.VendorDetailView.as_view(), name='vendor_detail'), path('vendors/create/', views.VendorCreateView.as_view(), name='vendor_create'), path('vendors//update/', views.VendorUpdateView.as_view(), name='vendor_update'), - path('vendors//delete/', views.delete_vendor, name='vendor_delete'), + path('vendors//delete/', views.VendorDetailView.as_view(), name='vendor_delete'), # Car URLs @@ -70,7 +73,13 @@ urlpatterns = [ path('sales/quotations/', views.QuotationListView.as_view(), name='quotation_list'), path('sales/quotations//confirm/', views.confirm_quotation, name='confirm_quotation'), path('sales/orders/detail//', views.SalesOrderDetailView.as_view(), name='order_detail'), - + + # Users URLs + path('user/create/', views.UserCreateView.as_view(), name='user_create'), + path('user//update/', views.UserUpdateView.as_view(), name='user_update'), + path('user//', views.UserDetailView.as_view(), name='user_detail'), + path('user/', views.UserListView.as_view(), name='user_list'), + path('user//confirm/', views.UserDeleteview, name='user_delete'), # Organization URLs path('organizations/', views.OrganizationListView.as_view(), name='organization_list'), path('organizations//', views.OrganizationDetailView.as_view(), name='organization_detail'), @@ -84,7 +93,14 @@ urlpatterns = [ path('representatives/create/', views.RepresentativeCreateView.as_view(), name='representative_create'), path('representatives//update/', views.RepresentativeUpdateView.as_view(), name='representative_update'), path('representatives//delete/', views.RepresentativeDeleteView.as_view(), name='representative_delete'), - ] +handler404 = 'inventory.views.custom_page_not_found_view' +handler500 = 'inventory.views.custom_error_view' +handler403 = 'inventory.views.custom_permission_denied_view' +handler400 = 'inventory.views.custom_bad_request_view' + + + + diff --git a/inventory/views.py b/inventory/views.py index d317ee7f..b569b265 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -26,11 +26,19 @@ from django.forms import ChoiceField, ModelForm, RadioSelect from django.urls import reverse, reverse_lazy from django.contrib import messages from django.db.models import Sum, F, Count + +from inventory.mixins import AddDealerInstanceMixin +from .services import elm, decodevin,get_make,get_model,normalize_name from .services import elm, decodevin, get_make, get_model, normalize_name, get_ledger_data from . import models, forms from django_tables2.export.views import ExportMixin +from django.contrib.auth.mixins import PermissionRequiredMixin +from django.contrib.auth.decorators import user_passes_test +from django.contrib.messages.views import SuccessMessageMixin +from django.contrib.auth.models import Group +from django.contrib.auth import get_user_model - +User = get_user_model() logger = logging.getLogger(__name__) logging.basicConfig(level=logging.INFO) @@ -68,7 +76,7 @@ class HomeView(LoginRequiredMixin, TemplateView): def dispatch(self, request, *args, **kwargs): - if not hasattr(request.user, 'dealer') or not request.user.is_authenticated: + if not any(hasattr(request.user, attr) for attr in ['dealer', 'subdealer']) or not request.user.is_authenticated: messages.error(request, _('You are not associated with any dealer.')) return redirect('welcome') return super().dispatch(request, *args, **kwargs) @@ -111,7 +119,7 @@ class CarCreateView(LoginRequiredMixin, CreateView): return reverse('inventory_stats') def form_valid(self, form): - form.instance.dealer = self.request.user.dealer + form.instance.dealer = self.request.user.dealer.get_parent_or_self form.save() messages.success(self.request, 'Car saved successfully.') return super().form_valid(form) @@ -232,7 +240,6 @@ class AjaxHandlerView(LoginRequiredMixin, View): ] return JsonResponse(serialized_specs, safe=False) - class CarInventory(LoginRequiredMixin, ListView): model = models.Car home_label = _('inventory') @@ -246,8 +253,9 @@ class CarInventory(LoginRequiredMixin, ListView): make_id = self.kwargs['make_id'] model_id = self.kwargs['model_id'] trim_id = self.kwargs['trim_id'] + cars = models.Car.objects.filter( - dealer__user=self.request.user, + dealer=self.request.user.dealer.get_parent_or_self, id_car_make=make_id, id_car_model=model_id, id_car_trim=trim_id,).order_by('receiving_date') @@ -290,7 +298,7 @@ def inventory_stats_view(request): # Annotate total cars by make, model, and trim cars = ( - models.Car.objects.filter(dealer=dealer) + models.Car.objects.filter(dealer=dealer.get_parent_or_self) .select_related('id_car_make', 'id_car_model', 'id_car_trim') .annotate( make_total=Count('id_car_make'), @@ -364,7 +372,6 @@ class CarDetailView(LoginRequiredMixin, DetailView): template_name = 'inventory/car_detail.html' context_object_name = 'car' - class CarFinanceCreateView(LoginRequiredMixin, CreateView): model = models.CarFinance form_class = forms.CarFinanceForm @@ -388,33 +395,27 @@ class CarFinanceCreateView(LoginRequiredMixin, CreateView): return context -class CarFinanceUpdateView(LoginRequiredMixin, UpdateView): +class CarFinanceUpdateView(LoginRequiredMixin,SuccessMessageMixin, UpdateView): model = models.CarFinance form_class = forms.CarFinanceForm template_name = 'inventory/car_finance_form.html' - - def form_valid(self, form): - messages.success(self.request, _('Car finance updated successfully.')) - return super().form_valid(form) + success_message = _('Car finance details updated successfully.') def get_success_url(self): return reverse('car_detail', kwargs={'pk': self.object.car.pk}) -class CarUpdateView(LoginRequiredMixin, UpdateView): +class CarUpdateView(LoginRequiredMixin, SuccessMessageMixin,UpdateView): model = models.Car form_class = forms.CarUpdateForm template_name = 'inventory/car_edit.html' - - def form_valid(self, form): - messages.success(self.request, _('Car updated successfully.')) - return super().form_valid(form) - + success_message = _('Car updated successfully.') + def get_success_url(self): return reverse('car_detail', kwargs={'pk': self.object.pk}) -class CarDeleteView(LoginRequiredMixin, DeleteView): +class CarDeleteView(LoginRequiredMixin,SuccessMessageMixin, DeleteView): model = models.Car template_name = 'inventory/car_confirm_delete.html' success_url = reverse_lazy('inventory_stats') @@ -527,48 +528,50 @@ class DealerDetailView(LoginRequiredMixin, DetailView): context_object_name = 'dealer' -class DealerCreateView(LoginRequiredMixin, CreateView): +class DealerCreateView(LoginRequiredMixin, SuccessMessageMixin,CreateView): model = models.Dealer form_class = forms.DealerForm template_name = 'dealer_form.html' success_url = reverse_lazy('dealer_list') + success_message = _('Dealer created successfully.') - def form_valid(self, form): - messages.success(self.request, _('Dealer created successfully.')) - return super().form_valid(form) - - -class DealerUpdateView(LoginRequiredMixin, UpdateView): +class DealerUpdateView(LoginRequiredMixin,SuccessMessageMixin, UpdateView): model = models.Dealer form_class = forms.DealerForm template_name = 'dealers/dealer_form.html' success_url = reverse_lazy('dealer_detail') - - def form_valid(self, form): - messages.success(self.request, _('Dealer updated successfully.')) - return super().form_valid(form) - - -class DealerDeleteView(LoginRequiredMixin, DeleteView): + success_message = _('Dealer updated successfully.') + + def get_success_url(self): + return reverse('dealer_detail', kwargs={'pk': self.object.pk}) + + def get_form(self, form_class=None): + form = super().get_form(form_class) + form.fields.pop('dealer_type') + return form + def get_form_class(self): + if self.request.user.dealer.is_parent: + return forms.DealerForm + else: + return forms.UserForm + +class DealerDeleteView(LoginRequiredMixin,SuccessMessageMixin, DeleteView): model = models.Dealer template_name = 'dealer_confirm_delete.html' success_url = reverse_lazy('dealer_list') + success_message = _('Dealer deleted successfully.') - def delete(self, request, *args, **kwargs): - messages.success(request, _('Dealer deleted successfully.')) - return super().delete(request, *args, **kwargs) - - -class CustomerListView(LoginRequiredMixin, ListView): +class CustomerListView(LoginRequiredMixin,PermissionRequiredMixin, ListView): model = models.Customer home_label = _('customers') context_object_name = 'customers' paginate_by = 10 template_name = "customers/customer_list.html" + permission_required = ('inventory.view_customer',) def get_queryset(self): query = self.request.GET.get('q') - customers = models.Customer.objects.filter(dealer__user=self.request.user) + customers = models.Customer.objects.filter(dealer=self.request.user.dealer.get_parent_or_self) if query: customers = customers.filter( @@ -583,44 +586,27 @@ class CustomerListView(LoginRequiredMixin, ListView): context['query'] = self.request.GET.get('q', '') return context - -class CustomerDetailView(LoginRequiredMixin, DetailView): +class CustomerDetailView(LoginRequiredMixin,PermissionRequiredMixin, DetailView): model = models.Customer template_name = 'customers/view_customer.html' context_object_name = 'customer' + permission_required = ('inventory.view_customer',) - -class CustomerCreateView(LoginRequiredMixin, CreateView): +class CustomerCreateView(LoginRequiredMixin,PermissionRequiredMixin,SuccessMessageMixin,AddDealerInstanceMixin, CreateView): model = models.Customer form_class = forms.CustomerForm template_name = 'customers/customer_form.html' success_url = reverse_lazy('customer_list') + permission_required = ('inventory.add_customer',) + success_message = _('Customer created successfully.') - def form_valid(self, form): - if form.is_valid(): - form.instance.dealer = self.request.user.dealer - form.save() - messages.success(self.request, _('Customer created successfully.')) - return super().form_valid(form) - else: - return form.errors - - -class CustomerUpdateView(LoginRequiredMixin, UpdateView): +class CustomerUpdateView(LoginRequiredMixin,PermissionRequiredMixin,SuccessMessageMixin,AddDealerInstanceMixin, UpdateView): model = models.Customer form_class = forms.CustomerForm template_name = 'customers/customer_form.html' success_url = reverse_lazy('customer_list') - - def form_valid(self, form): - if form.is_valid(): - form.instance.dealer = self.request.user.dealer - form.save() - messages.success(self.request, _('Customer updated successfully.')) - return super().form_valid(form) - else: - return form.errors - + permission_required = ('inventory.change_customer',) + success_message = _('Customer updated successfully.') @login_required def delete_customer(request, pk): @@ -630,49 +616,35 @@ def delete_customer(request, pk): return redirect('customer_list') -class VendorListView(LoginRequiredMixin, ListView): +class VendorListView(LoginRequiredMixin,PermissionRequiredMixin, ListView): model = models.Vendor context_object_name = 'vendors' paginate_by = 10 template_name = "vendors/vendors_list.html" + permission_required = ('inventory.view_vendor',) -class VendorDetailView(LoginRequiredMixin, DetailView): +class VendorDetailView(LoginRequiredMixin,PermissionRequiredMixin, DetailView): model = models.Vendor template_name = "vendors/view_vendor.html" + permission_required = ('inventory.view_vendor',) -class VendorCreateView(LoginRequiredMixin, CreateView): +class VendorCreateView(LoginRequiredMixin,PermissionRequiredMixin,SuccessMessageMixin,AddDealerInstanceMixin, CreateView): model = models.Vendor form_class = forms.VendorForm template_name = 'vendors/vendor_form.html' success_url = reverse_lazy('vendor_list') - - def form_valid(self, form): - if form.is_valid(): - form.instance.dealer = self.request.user.dealer - form.save() - messages.success(self.request, _('Vendor created successfully.')) - return super().form_valid(form) - else: - return form.errors - - -class VendorUpdateView(LoginRequiredMixin, UpdateView): + permission_required = ('inventory.add_vendor',) + success_message = _('Vendor created successfully.') + +class VendorUpdateView(LoginRequiredMixin,PermissionRequiredMixin,SuccessMessageMixin,AddDealerInstanceMixin, UpdateView): model = models.Vendor form_class = forms.VendorForm template_name = 'vendors/vendor_form.html' success_url = reverse_lazy('vendor_list') - - def form_valid(self, form): - if form.is_valid(): - form.instance.dealer = self.request.user.dealer - form.save() - messages.success(self.request, _('Vendor updated successfully.')) - return super().form_valid(form) - else: - return form.errors - + permission_required = ('inventory.change_vendor',) + success_message = _('Vendor updated successfully.') @login_required def delete_vendor(request, pk): @@ -682,10 +654,12 @@ def delete_vendor(request, pk): return redirect('vendor_list') -class QuotationCreateView(LoginRequiredMixin, CreateView): +class QuotationCreateView(LoginRequiredMixin,PermissionRequiredMixin, CreateView): model = models.SaleQuotation form_class = forms.QuotationForm template_name = 'sales/quotation_form.html' + permission_required = ('inventory.add_salequotation',) + def form_valid(self, form): quotation = form.save() @@ -702,11 +676,13 @@ class QuotationCreateView(LoginRequiredMixin, CreateView): return redirect('quotation_list') -class QuotationListView(LoginRequiredMixin, ListView): +class QuotationListView(LoginRequiredMixin,PermissionRequiredMixin, ListView): model = models.SaleQuotation template_name = "sales/quotation_list.html" context_object_name = "quotations" paginate_by = 10 + permission_required = ('inventory.view_salequotation',) + def get_queryset(self): status = self.request.GET.get("status") @@ -716,10 +692,37 @@ class QuotationListView(LoginRequiredMixin, ListView): return queryset -class QuotationDetailView(LoginRequiredMixin, DetailView): +class QuotationDetailView(LoginRequiredMixin,PermissionRequiredMixin, DetailView): model = models.SaleQuotation template_name = "sales/quotation_detail.html" context_object_name = "quotation" + permission_required = ('inventory.view_salequotation',) + + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + quotation = self.object + + # Totals Calculation + context['vat_rate'] = settings.VAT_RATE + context['total_sales_before_vat'] = sum(item.car.selling_price * item.quantity for item in quotation.quotation_cars.all()) + context['vat_amount'] = sum(item.car.vat_amount * item.quantity for item in quotation.quotation_cars.all()) + context['total_sales_after_vat'] = context['total_sales_before_vat'] + context['vat_amount'] + + # Additional Costs + total_quantity = quotation.total_quantity + context['administration_fee'] = sum(item.car.administration_fee for item in quotation.quotation_cars.all()) + context['transportation_fee'] = sum(item.car.transportation_fee for item in quotation.quotation_cars.all()) + context['custom_card_fee'] = sum(item.car.custom_card_fee for item in quotation.quotation_cars.all()) + context['registration_fee'] = sum(item.car.registration_fee for item in quotation.quotation_cars.all()) + context['administration_fee_vat'] = sum(item.car.administration_fee_vat for item in quotation.quotation_cars.all()) + context['transportation_fee_vat'] = sum(item.car.transportation_fee_vat for item in quotation.quotation_cars.all()) + context['custom_card_fee_vat'] = sum(item.car.custom_card_fee_vat for item in quotation.quotation_cars.all()) + context['administration_fee_total'] = sum(item.car.administration_fee + context['administration_fee_vat'] for item in quotation.quotation_cars.all()) + context['transportation_fee_total'] = sum(item.car.transportation_fee + context['transportation_fee_vat'] for item in quotation.quotation_cars.all()) + context['custom_card_fee_total'] = sum(item.car.custom_card_fee + context['custom_card_fee_vat'] for item in quotation.quotation_cars.all()) + context['registration_fee_total'] = sum(item.car.registration_fee * total_quantity for item in quotation.quotation_cars.all()) + + return context def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) @@ -763,10 +766,116 @@ def confirm_quotation(request, pk): return redirect("quotation_detail", pk=pk) -class SalesOrderDetailView(LoginRequiredMixin, DetailView): +class SalesOrderDetailView(LoginRequiredMixin,PermissionRequiredMixin, DetailView): model = models.SalesOrder template_name = "sales/sales_order_detail.html" context_object_name = "sales_order" + permission_required = ('inventory.view_salequotation',) + slug_field = 'order_id' + slug_url_kwarg = 'order_id' + + +#Users +class UserListView(LoginRequiredMixin,PermissionRequiredMixin, ListView): + model = models.Dealer + context_object_name = 'users' + paginate_by = 10 + template_name = "users/user_list.html" + permission_required = ('inventory.view_dealer',) + + def get_queryset(self): + query = self.request.GET.get('q') + users = self.request.user.dealer.sub_dealers + + if query: + users = users.filter( + Q(name__icontains=query) | + Q(arabic_name__icontains=query) | + Q(phone_number__icontains=query)| + Q(address__icontains=query) + ) + return users.all() + + +class UserDetailView(LoginRequiredMixin,PermissionRequiredMixin, DetailView): + model = models.Dealer + template_name = "users/user_detail.html" + context_object_name = "user" + permission_required = ('inventory.view_dealer',) + +class UserCreateView(LoginRequiredMixin,PermissionRequiredMixin,SuccessMessageMixin,AddDealerInstanceMixin, CreateView): + model = models.Dealer + form_class = forms.UserForm + template_name = 'users/user_form.html' + success_url = reverse_lazy('user_list') + permission_required = ('inventory.add_dealer',) + success_message = _('User created successfully.') + + def get_form(self, form_class = None): + form = super().get_form(form_class) + form.fields['dealer_type'].choices = [t for t in form.fields['dealer_type'].choices if t[0] != 'Owner'] + return form + def form_valid(self, form): + dealer = self.request.user.dealer.get_parent_or_self + if dealer.sub_dealers.count() >= dealer.get_active_plan.max_users: + messages.error(self.request, _("You have reached the maximum number of users.")) + return redirect('user_list') + + user = User.objects.create_user(username=form.cleaned_data['name']) + user.set_password("Tenhal@123") + user.save() + form.instance.user = user + form.instance.parent_dealer = dealer + for group in user.groups.all(): + group.user_set.remove(user) + Group.objects.get(name=form.cleaned_data['dealer_type'].lower()).user_set.add(user) + form.save() + return super().form_valid(form) + + +class UserUpdateView(LoginRequiredMixin,PermissionRequiredMixin,SuccessMessageMixin,AddDealerInstanceMixin, UpdateView): + model = models.Dealer + form_class = forms.UserForm + template_name = 'users/user_form.html' + success_url = reverse_lazy('user_list') + permission_required = ('inventory.change_dealer',) + success_message = _('User updated successfully.') + + def get_form(self, form_class = None): + form = super().get_form(form_class) + if not self.request.user.has_perms(["inventory.change_dealer_type"]): + field = form.fields['dealer_type'] + field.widget = field.hidden_widget() + form.fields['dealer_type'].choices = [t for t in form.fields['dealer_type'].choices if t[0] != 'Owner'] + return form + def form_valid(self, form): + user = form.instance.user + for group in user.groups.all(): + group.user_set.remove(user) + Group.objects.get(name=form.cleaned_data['dealer_type'].lower()).user_set.add(user) + form.save() + return super().form_valid(form) + + +def UserDeleteview(request, pk): + user = get_object_or_404(models.Dealer, pk=pk) + user.delete() + messages.success(request, _('User deleted successfully.')) + return redirect('user_list') + + +#errors +def custom_page_not_found_view(request, exception): + return render(request, "errors/404.html", {}) + +def custom_error_view(request, exception=None): + return render(request, "errors/500.html", {}) + +def custom_permission_denied_view(request, exception=None): + return render(request, "errors/403.html", {}) + +def custom_bad_request_view(request, exception=None): + return render(request, "errors/400.html", {}) class OrganizationListView(LoginRequiredMixin, ListView): diff --git a/locale/ar/LC_MESSAGES/django.mo b/locale/ar/LC_MESSAGES/django.mo index 592872df..9ae87ff0 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 47095f1f..1ebf4123 100644 --- a/locale/ar/LC_MESSAGES/django.po +++ b/locale/ar/LC_MESSAGES/django.po @@ -84,17 +84,37 @@ msgstr "جديد" msgid "Used" msgstr "مستعمل" -#: inventory/models.py:134 inventory/models.py:520 +#: inventory/models.py:131 +msgid "Owner" +msgstr "المالك" + +#: inventory/models.py:132 templates/header.html:50 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:440 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:526 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:521 +#: venv/lib/python3.12/site-packages/django_ledger/views/inventory.py:45 +msgid "Inventory" +msgstr "المخزن" + +#: inventory/models.py:133 +msgid "Accountent" +msgstr "المحاسب" + +#: inventory/models.py:134 +msgid "Sales" +msgstr "المبيعات" + +#: inventory/models.py:140 inventory/models.py:503 msgid "Dealer" msgstr "المعرض" #: inventory/models.py:143 inventory/models.py:540 #: templates/inventory/car_detail.html:142 #: templates/inventory/car_form.html:230 -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:359 -#: venv/lib/python3.11/site-packages/django_ledger/models/vendor.py:191 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:12 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:359 +#: venv/lib/python3.12/site-packages/django_ledger/models/vendor.py:191 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:10 msgid "Vendor" msgstr "المورد" @@ -189,17 +209,16 @@ msgstr "حجوزات السيارات" msgid "Cost Price" msgstr "سعر التكلفة" -#: inventory/models.py:340 templates/inventory/car_detail.html:225 -#: templates/sales/sales_order_detail.html:25 -msgid "Selling Price" -msgstr "سعر البيع" - -#: inventory/models.py:343 +#: inventory/models.py:240 msgid "Profit Margin" msgstr "هامش الربح" -#: inventory/models.py:347 -msgid "Vat Amount" +#: inventory/models.py:244 templates/inventory/car_detail.html:165 +msgid "Selling Price" +msgstr "سعر البيع" + +#: inventory/models.py:247 templates/inventory/car_detail.html:189 +msgid "VAT Amount" msgstr "مبلغ ضريبة القيمة المضافة" #: inventory/models.py:349 templates/inventory/car_detail.html:245 @@ -421,6 +440,7 @@ msgid "Dealers" msgstr "المعارض" #: inventory/models.py:534 templates/vendors/view_vendor.html:49 +#: inventory/models.py:533 templates/vendors/view_vendor.html:51 msgid "Contact Person" msgstr "الشخص المسؤول" @@ -565,6 +585,28 @@ msgstr "المبلغ الإجمالي" msgid "Chart of Accounts" msgstr "قائمة الحسابات" +#: inventory/signals.py:67 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:32 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:33 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:28 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:21 +msgid "Unit" +msgstr "الوحدة" + +#: inventory/signals.py:68 +msgid "U" +msgstr "" + +#: inventory/signals.py:126 +msgid "C" +msgstr "" + #: inventory/utils.py:25 msgid "success" msgstr "ناجحة" @@ -715,7 +757,7 @@ msgstr "هل أنت متأكد أنك تريد تسجيل الخروج؟" #: templates/accounts/password_change.html:4 #: templates/accounts/password_change.html:12 #: templates/accounts/password_change.html:24 -#: templates/dealers/dealer_detail.html:58 +#: templates/dealers/dealer_detail.html:60 msgid "Change Password" msgstr "تغيير كلمة المرور" @@ -876,20 +918,6 @@ msgstr "الإجراءات" msgid "view" msgstr "عرض" -#: templates/customers/customer_list.html:75 -msgid "No customers found." -msgstr "لم يتم العثور على عملاء." - -#: templates/customers/customer_list.html:89 -#: venv/lib/python3.11/site-packages/alabaster/relations.html:9 -msgid "Previous" -msgstr "السابق" - -#: templates/customers/customer_list.html:111 -#: venv/lib/python3.11/site-packages/alabaster/relations.html:13 -msgid "Next" -msgstr "التالي" - #: templates/customers/view_customer.html:4 msgid "View Customer" msgstr "عرض العميل" @@ -901,12 +929,16 @@ msgstr "هل أنت متأكد أنك تريد حذف هذا العميل؟" #: templates/customers/view_customer.html:26 #: templates/inventory/car_detail.html:48 templates/vendors/view_vendor.html:29 #: venv/lib/python3.11/site-packages/django/forms/widgets.py:802 +#: templates/users/user_detail.html:26 templates/vendors/view_vendor.html:29 +#: venv/lib/python3.12/site-packages/django/forms/widgets.py:796 msgid "No" msgstr "لا" #: templates/customers/view_customer.html:31 #: templates/inventory/car_detail.html:52 templates/vendors/view_vendor.html:32 #: venv/lib/python3.11/site-packages/django/forms/widgets.py:801 +#: templates/users/user_detail.html:31 templates/vendors/view_vendor.html:32 +#: venv/lib/python3.12/site-packages/django/forms/widgets.py:795 msgid "Yes" msgstr "نعم" @@ -976,43 +1008,43 @@ msgstr "تفاصيل المعرض" msgid "N/A" msgstr "غير متوفر" -#: templates/dealers/dealer_detail.html:47 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:101 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:49 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:46 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:154 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:63 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/import_job_update.html:14 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_list_table.html:40 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entity_update.html:16 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:56 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/expense_update.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:43 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:66 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/inventory_item_update.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:38 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:40 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:137 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:34 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/product_update.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:42 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:61 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/service_update.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:42 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_list.html:34 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_update.html:22 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:41 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/uom_update.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:63 +#: templates/dealers/dealer_detail.html:49 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:101 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:49 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:46 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:154 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:63 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/import_job_update.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_list_table.html:40 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/entity_update.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:56 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/expense_update.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:43 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:66 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/inventory_item_update.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:38 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:40 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:137 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:34 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/product_update.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:42 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:61 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/service_update.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:42 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_list.html:34 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_update.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:41 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/uom_update.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:63 msgid "Update" msgstr "تحديث" -#: templates/dealers/dealer_detail.html:54 +#: templates/dealers/dealer_detail.html:56 msgid "Account Management" msgstr "إدارة الحساب" -#: templates/dealers/dealer_detail.html:69 +#: templates/dealers/dealer_detail.html:71 msgid "Admin Panel" msgstr "لوحة التحكم الإدارية" @@ -1050,19 +1082,11 @@ msgstr "عودة" msgid "home" msgstr "الرئيسية" -#: templates/header.html:40 +#: templates/header.html:41 msgid "add car" msgstr "إضافة سيارة" -#: templates/header.html:48 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:440 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:526 -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:521 -#: venv/lib/python3.11/site-packages/django_ledger/views/inventory.py:45 -msgid "Inventory" -msgstr "المخزون" - -#: templates/header.html:66 +#: templates/header.html:69 msgid "add customer" msgstr "إضافة عميل" @@ -1119,7 +1143,6 @@ msgid "View the current value of your car inventory." msgstr "عرض القيمة الحالية لمخزون السيارات الخاص بك." #: templates/index.html:61 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:31 msgid "Profitability" msgstr "الربحية" @@ -1205,37 +1228,37 @@ msgid "View your daily sales trends." msgstr "عرض اتجاهات المبيعات اليومية." #: templates/index.html:217 -#: venv/lib/python3.11/site-packages/django/utils/dates.py:22 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:22 msgid "Sun" msgstr "الأحد" #: templates/index.html:218 -#: venv/lib/python3.11/site-packages/django/utils/dates.py:16 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:16 msgid "Mon" msgstr "الإثنين" #: templates/index.html:219 -#: venv/lib/python3.11/site-packages/django/utils/dates.py:17 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:17 msgid "Tue" msgstr "الثلاثاء" #: templates/index.html:220 -#: venv/lib/python3.11/site-packages/django/utils/dates.py:18 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:18 msgid "Wed" msgstr "الأربعاء" #: templates/index.html:221 -#: venv/lib/python3.11/site-packages/django/utils/dates.py:19 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:19 msgid "Thu" msgstr "الخميس" #: templates/index.html:222 -#: venv/lib/python3.11/site-packages/django/utils/dates.py:20 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:20 msgid "Fri" msgstr "الجمعة" #: templates/index.html:223 -#: venv/lib/python3.11/site-packages/django/utils/dates.py:21 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:21 msgid "Sat" msgstr "السبت" @@ -1406,6 +1429,7 @@ msgid "No specifications available." msgstr "لا توجد مواصفات متاحة." #: templates/inventory/car_detail.html:471 +#: templates/inventory/car_detail.html:408 #: templates/inventory/car_list.html:546 msgid "Error loading specifications." msgstr "حدث خطأ أثناء تحميل المواصفات." @@ -1576,24 +1600,24 @@ msgstr "إحصائيات المخزون" msgid "Total Cars in Inventory" msgstr "إجمالي السيارات في المخزون" -#: templates/inventory/inventory_stats.html:40 +#: templates/inventory/inventory_stats.html:39 msgid "models" msgstr "الموديلات" -#: templates/inventory/inventory_stats.html:52 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:43 +#: templates/inventory/inventory_stats.html:51 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:43 msgid "Details" msgstr "التفاصيل" -#: templates/inventory/inventory_stats.html:55 +#: templates/inventory/inventory_stats.html:54 msgid "Trims" msgstr "الفئات" -#: templates/inventory/inventory_stats.html:64 +#: templates/inventory/inventory_stats.html:63 msgid "No trims available" msgstr "لا يوجد فئات متاحة." -#: templates/inventory/inventory_stats.html:70 +#: templates/inventory/inventory_stats.html:69 msgid "No models available." msgstr "لا توجد موديلات متاحة." @@ -1729,46 +1753,21 @@ msgstr "التكلفة الإجمالية مع ضريبة القيمة المض msgid "Registration Fee (No VAT)" msgstr "رسوم التسجيل (بدون ضريبة القيمة المضافة)" -#: templates/sales/quotation_detail.html:104 -msgid "Back to Quotations" -msgstr "العودة إلى قائمة عروض الأسعار" +#: templates/vendors/vendors_list.html:72 +msgid "no vendors found" +msgstr "لم يتم العثور على موردين" -#: templates/sales/quotation_form.html:5 templates/sales/quotation_form.html:9 -msgid "Create Quotation" -msgstr "إنشاء عرض سعر" +#: templates/vendors/vendors_list.html:82 +msgid "first" +msgstr "الأول" -#: templates/sales/quotation_list.html:4 templates/sales/quotation_list.html:8 -msgid "Quotations" -msgstr "عروض الأسعار" +#: templates/vendors/vendors_list.html:87 +msgid "previous" +msgstr "السابق" -#: templates/sales/quotation_list.html:15 -msgid "Total Cars" -msgstr "إجمالي عدد السيارات" - -#: templates/sales/quotation_list.html:39 -msgid "No Quotations Found" -msgstr "لم يتم العثور على عروض أسعار" - -#: templates/sales/sales_order_detail.html:2 -#: templates/sales/sales_order_detail.html:5 -msgid "Sales Order Details" -msgstr "تفاصيل أمر البيع" - -#: templates/sales/sales_order_detail.html:8 -msgid "Quotation ID" -msgstr "رقم عرض السعر" - -#: templates/sales/sales_order_detail.html:21 -msgid "Cars in Sales Order" -msgstr "السيارات في أمر البيع" - -#: templates/vendors/vendor_form.html:14 -msgid "Edit Vendor" -msgstr "تعديل المورد" - -#: templates/vendors/vendors_list.html:20 -msgid "Enter vendor name" -msgstr "أدخل اسم المورد" +#: templates/vendors/vendors_list.html:112 +msgid "next" +msgstr "التالي" #: templates/vendors/vendors_list.html:62 msgid "No vendors found" @@ -1849,155 +1848,150 @@ msgstr "هل أنت مستعد للتحكم في مخزونك؟" msgid "Join Us Today" msgstr "انضم لنا اليوم" -#: venv/lib/python3.11/site-packages/alabaster/layout.html:99 +#: venv/lib/python3.12/site-packages/alabaster/layout.html:99 msgid "Page source" msgstr "مصدر الصفحة" -#: venv/lib/python3.11/site-packages/alabaster/navigation.html:1 +#: venv/lib/python3.12/site-packages/alabaster/navigation.html:1 msgid "Navigation" msgstr "التنقل" -#: venv/lib/python3.11/site-packages/alabaster/relations.html:2 +#: venv/lib/python3.12/site-packages/alabaster/relations.html:2 msgid "Related Topics" msgstr "موضوعات ذات صلة" -#: venv/lib/python3.11/site-packages/alabaster/relations.html:4 +#: venv/lib/python3.12/site-packages/alabaster/relations.html:4 msgid "Documentation overview" msgstr "نظرة عامة على الوثائق" -#: venv/lib/python3.11/site-packages/custom/models.py:9 +#: venv/lib/python3.12/site-packages/alabaster/relations.html:9 +msgid "Previous" +msgstr "السابق" + +#: venv/lib/python3.12/site-packages/alabaster/relations.html:13 +msgid "Next" +msgstr "التالي" + +#: venv/lib/python3.12/site-packages/custom/models.py:9 msgid "library" msgstr "المكتبة" -#: venv/lib/python3.11/site-packages/custom/models.py:10 +#: venv/lib/python3.12/site-packages/custom/models.py:10 msgid "libraries" msgstr "المكتبات" -#: venv/lib/python3.11/site-packages/django/contrib/messages/apps.py:16 +#: venv/lib/python3.12/site-packages/django/contrib/messages/apps.py:15 msgid "Messages" msgstr "الرسائل" -#: venv/lib/python3.11/site-packages/django/contrib/sitemaps/apps.py:8 +#: venv/lib/python3.12/site-packages/django/contrib/sitemaps/apps.py:8 msgid "Site Maps" msgstr "خرائط الموقع" -#: venv/lib/python3.11/site-packages/django/contrib/staticfiles/apps.py:9 +#: venv/lib/python3.12/site-packages/django/contrib/staticfiles/apps.py:9 msgid "Static Files" msgstr "الملفات الثابتة" -#: venv/lib/python3.11/site-packages/django/contrib/syndication/apps.py:7 +#: venv/lib/python3.12/site-packages/django/contrib/syndication/apps.py:7 msgid "Syndication" msgstr "التوزيع" #. Translators: String used to replace omitted page numbers in elided page #. range generated by paginators, e.g. [1, 2, '…', 5, 6, 7, '…', 9, 10]. -#: venv/lib/python3.11/site-packages/django/core/paginator.py:30 +#: venv/lib/python3.12/site-packages/django/core/paginator.py:30 msgid "…" msgstr "…" -#: venv/lib/python3.11/site-packages/django/core/paginator.py:32 +#: venv/lib/python3.12/site-packages/django/core/paginator.py:50 msgid "That page number is not an integer" msgstr "رقم الصفحة ليس عدداً صحيحاً" -#: venv/lib/python3.11/site-packages/django/core/paginator.py:33 +#: venv/lib/python3.12/site-packages/django/core/paginator.py:52 msgid "That page number is less than 1" msgstr "رقم الصفحة أقل من 1" -#: venv/lib/python3.11/site-packages/django/core/paginator.py:34 +#: venv/lib/python3.12/site-packages/django/core/paginator.py:54 msgid "That page contains no results" msgstr "هذه الصفحة لا تحتوي على نتائج" -#: venv/lib/python3.11/site-packages/django/core/validators.py:22 +#: venv/lib/python3.12/site-packages/django/core/validators.py:22 msgid "Enter a valid value." msgstr "أدخل قيمة صالحة." -#: venv/lib/python3.11/site-packages/django/core/validators.py:70 -msgid "Enter a valid domain name." -msgstr "أدخل اسم مجال صالحًا." - -#: venv/lib/python3.11/site-packages/django/core/validators.py:155 -#: venv/lib/python3.11/site-packages/django/forms/fields.py:768 +#: venv/lib/python3.12/site-packages/django/core/validators.py:104 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:752 msgid "Enter a valid URL." msgstr "أدخل رابط URL صالحاً." -#: venv/lib/python3.11/site-packages/django/core/validators.py:216 +#: venv/lib/python3.12/site-packages/django/core/validators.py:165 msgid "Enter a valid integer." msgstr "أدخل عدداً صحيحاً صالحاً." -#: venv/lib/python3.11/site-packages/django/core/validators.py:227 +#: venv/lib/python3.12/site-packages/django/core/validators.py:176 msgid "Enter a valid email address." msgstr "أدخل عنوان بريد إلكتروني صالح." #. Translators: "letters" means latin letters: a-z and A-Z. -#: venv/lib/python3.11/site-packages/django/core/validators.py:310 +#: venv/lib/python3.12/site-packages/django/core/validators.py:259 msgid "" "Enter a valid “slug” consisting of letters, numbers, underscores or hyphens." msgstr "أدخل “Slug” صالح يتكون من أحرف وأرقام وتسطيرات سفلية أو واصلات." -#: venv/lib/python3.11/site-packages/django/core/validators.py:318 +#: venv/lib/python3.12/site-packages/django/core/validators.py:267 msgid "" "Enter a valid “slug” consisting of Unicode letters, numbers, underscores, or " "hyphens." msgstr "أدخل “Slug” صالح يتكون من أحرف يونكود وأرقام وتسطيرات سفلية أو واصلات." -#: venv/lib/python3.11/site-packages/django/core/validators.py:330 -#: venv/lib/python3.11/site-packages/django/core/validators.py:339 -#: venv/lib/python3.11/site-packages/django/core/validators.py:353 -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2215 -#, fuzzy, python-format -#| msgid "Enter a valid %(protocol)s address." -msgid "Enter a valid %(protocol)s address." -msgstr "أدخل عنوان %(بروتوكول) صالحًا." +#: venv/lib/python3.12/site-packages/django/core/validators.py:279 +#: venv/lib/python3.12/site-packages/django/core/validators.py:287 +#: venv/lib/python3.12/site-packages/django/core/validators.py:316 +#, fuzzy +#| msgid "Enter a valid email address." +msgid "Enter a valid IPv4 address." +msgstr "أدخل عنوان بريد إلكتروني صالح." -#: venv/lib/python3.11/site-packages/django/core/validators.py:332 -msgid "IPv4" -msgstr "IPv4" +#: venv/lib/python3.12/site-packages/django/core/validators.py:296 +#: venv/lib/python3.12/site-packages/django/core/validators.py:317 +#, fuzzy +#| msgid "Enter a valid email address." +msgid "Enter a valid IPv6 address." +msgstr "أدخل عنوان بريد إلكتروني صالح." -#: venv/lib/python3.11/site-packages/django/core/validators.py:341 -#: venv/lib/python3.11/site-packages/django/utils/ipv6.py:30 -msgid "IPv6" -msgstr "6" +#: venv/lib/python3.12/site-packages/django/core/validators.py:308 +#: venv/lib/python3.12/site-packages/django/core/validators.py:315 +#, fuzzy +#| msgid "Enter a valid email address." +msgid "Enter a valid IPv4 or IPv6 address." +msgstr "أدخل عنوان بريد إلكتروني صالح." -#: venv/lib/python3.11/site-packages/django/core/validators.py:355 -msgid "IPv4 or IPv6" -msgstr "IPv4 or IPv6" - -#: venv/lib/python3.11/site-packages/django/core/validators.py:396 +#: venv/lib/python3.12/site-packages/django/core/validators.py:351 msgid "Enter only digits separated by commas." msgstr "أدخل أرقاماً فقط مفصولة بفواصل." -#: venv/lib/python3.11/site-packages/django/core/validators.py:402 +#: venv/lib/python3.12/site-packages/django/core/validators.py:357 #, python-format msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)." msgstr "تأكد من أن هذه القيمة هي %(limit_value)s (هي %(show_value)s)." -#: venv/lib/python3.11/site-packages/django/core/validators.py:437 -#: venv/lib/python3.11/site-packages/djmoney/models/validators.py:51 +#: venv/lib/python3.12/site-packages/django/core/validators.py:392 +#: venv/lib/python3.12/site-packages/djmoney/models/validators.py:51 #, python-format msgid "Ensure this value is less than or equal to %(limit_value)s." msgstr "تأكد من أن هذه القيمة أقل من أو تساوي %(limit_value)s." -#: venv/lib/python3.11/site-packages/django/core/validators.py:446 -#: venv/lib/python3.11/site-packages/djmoney/models/validators.py:43 +#: venv/lib/python3.12/site-packages/django/core/validators.py:401 +#: venv/lib/python3.12/site-packages/djmoney/models/validators.py:43 #, python-format msgid "Ensure this value is greater than or equal to %(limit_value)s." msgstr "تأكد من أن هذه القيمة أكبر من أو تساوي %(limit_value)s." -#: venv/lib/python3.11/site-packages/django/core/validators.py:455 +#: venv/lib/python3.12/site-packages/django/core/validators.py:410 #, python-format msgid "Ensure this value is a multiple of step size %(limit_value)s." msgstr "تأكد من أن هذه القيمة هي مضاعف لخطوة الحجم %(limit_value)s." -#: venv/lib/python3.11/site-packages/django/core/validators.py:462 -#, python-format -msgid "" -"Ensure this value is a multiple of step size %(limit_value)s, starting from " -"%(offset)s, e.g. %(offset)s, %(valid_value1)s, %(valid_value2)s, and so on." -msgstr "" -"تأكد من أن هذه القيمة هي مضاعف لخطوة الحجم %(limit_value)s بدءاً من " -"%(offset)s، مثل %(offset)s، %(valid_value1)s، %(valid_value2)s، وهكذا." - -#: venv/lib/python3.11/site-packages/django/core/validators.py:494 +#: venv/lib/python3.12/site-packages/django/core/validators.py:420 #, python-format msgid "" "Ensure this value has at least %(limit_value)d character (it has " @@ -2012,7 +2006,7 @@ msgstr[1] "" "تأكد من أن هذه القيمة تحتوي على الأقل على %(limit_value)d أحرف (تحتوي على " "%(show_value)d)." -#: venv/lib/python3.11/site-packages/django/core/validators.py:512 +#: venv/lib/python3.12/site-packages/django/core/validators.py:438 #, python-format msgid "" "Ensure this value has at most %(limit_value)d character (it has " @@ -2027,27 +2021,27 @@ msgstr[1] "" "تأكد من أن هذه القيمة تحتوي على الأكثر على %(limit_value)d أحرف (تحتوي على " "%(show_value)d)." -#: venv/lib/python3.11/site-packages/django/core/validators.py:535 -#: venv/lib/python3.11/site-packages/django/forms/fields.py:359 -#: venv/lib/python3.11/site-packages/django/forms/fields.py:398 +#: venv/lib/python3.12/site-packages/django/core/validators.py:461 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:347 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:386 msgid "Enter a number." msgstr "أدخل رقماً." -#: venv/lib/python3.11/site-packages/django/core/validators.py:537 +#: venv/lib/python3.12/site-packages/django/core/validators.py:463 #, python-format msgid "Ensure that there are no more than %(max)s digit in total." msgid_plural "Ensure that there are no more than %(max)s digits in total." msgstr[0] "تأكد من أن العدد الإجمالي للأرقام لا يتجاوز %(max)s رقم." msgstr[1] "تأكد من أن العدد الإجمالي للأرقام لا يتجاوز %(max)s أرقام." -#: venv/lib/python3.11/site-packages/django/core/validators.py:542 +#: venv/lib/python3.12/site-packages/django/core/validators.py:468 #, python-format msgid "Ensure that there are no more than %(max)s decimal place." msgid_plural "Ensure that there are no more than %(max)s decimal places." msgstr[0] "تأكد من أن العدد الإجمالي للأماكن العشرية لا يتجاوز %(max)s." msgstr[1] "تأكد من أن العدد الإجمالي للأماكن العشرية لا يتجاوز %(max)s." -#: venv/lib/python3.11/site-packages/django/core/validators.py:547 +#: venv/lib/python3.12/site-packages/django/core/validators.py:473 #, python-format msgid "" "Ensure that there are no more than %(max)s digit before the decimal point." @@ -2058,7 +2052,7 @@ msgstr[0] "" msgstr[1] "" "تأكد من أن العدد الإجمالي للأرقام قبل العلامة العشرية لا يتجاوز %(max)s." -#: venv/lib/python3.11/site-packages/django/core/validators.py:618 +#: venv/lib/python3.12/site-packages/django/core/validators.py:544 #, python-format msgid "" "File extension “%(extension)s” is not allowed. Allowed extensions are: " @@ -2067,85 +2061,85 @@ msgstr "" "امتداد الملف “%(extension)s” غير مسموح به. الامتدادات المسموح بها هي: " "%(allowed_extensions)s." -#: venv/lib/python3.11/site-packages/django/core/validators.py:680 +#: venv/lib/python3.12/site-packages/django/core/validators.py:605 msgid "Null characters are not allowed." msgstr "الأحرف الفارغة غير مسموح بها." -#: venv/lib/python3.11/site-packages/django/db/models/base.py:1572 -#: venv/lib/python3.11/site-packages/django/forms/models.py:908 +#: venv/lib/python3.12/site-packages/django/db/models/base.py:1423 +#: venv/lib/python3.12/site-packages/django/forms/models.py:893 msgid "and" msgstr "و" -#: venv/lib/python3.11/site-packages/django/db/models/base.py:1574 +#: venv/lib/python3.12/site-packages/django/db/models/base.py:1425 #, python-format msgid "%(model_name)s with this %(field_labels)s already exists." msgstr "%(model_name)s مع %(field_labels)s هذا موجود بالفعل." -#: venv/lib/python3.11/site-packages/django/db/models/constraints.py:22 +#: venv/lib/python3.12/site-packages/django/db/models/constraints.py:17 #, python-format msgid "Constraint “%(name)s” is violated." msgstr "تم انتهاك القيد “%(name)s”." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:134 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:128 #, python-format msgid "Value %(value)r is not a valid choice." msgstr "القيمة %(value)r ليست خياراً صالحاً." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:135 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:129 msgid "This field cannot be null." msgstr "لا يمكن أن يكون هذا الحقل فارغاً." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:136 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:130 msgid "This field cannot be blank." msgstr "لا يمكن أن يكون هذا الحقل فارغاً." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:137 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:131 #, python-format msgid "%(model_name)s with this %(field_label)s already exists." msgstr "%(model_name)s مع %(field_label)s هذا موجود بالفعل." #. Translators: The 'lookup_type' is one of 'date', 'year' or #. 'month'. Eg: "Title must be unique for pub_date year" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:141 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:135 #, python-format msgid "" "%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s." msgstr "" "%(field_label)s يجب أن يكون فريداً لـ %(date_field_label)s %(lookup_type)s." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:180 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:173 #, python-format msgid "Field of type: %(field_type)s" msgstr "حقل من النوع: %(field_type)s" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1156 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1094 #, python-format msgid "“%(value)s” value must be either True or False." msgstr "القيمة “%(value)s” يجب أن تكون إما True أو False." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1157 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1095 #, python-format msgid "“%(value)s” value must be either True, False, or None." msgstr "القيمة “%(value)s” يجب أن تكون إما True، False، أو None." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1159 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1097 msgid "Boolean (Either True or False)" msgstr "قيمة منطقية (إما True أو False)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1209 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1147 #, python-format msgid "String (up to %(max_length)s)" msgstr "نص (حتى %(max_length)s)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1211 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1149 msgid "String (unlimited)" msgstr "نص (غير محدود)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1320 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1253 msgid "Comma-separated integers" msgstr "أرقام مفصولة بفواصل" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1421 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1354 #, python-format msgid "" "“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD " @@ -2154,8 +2148,8 @@ msgstr "" "القيمة “%(value)s” تحتوي على تنسيق تاريخ غير صالح. يجب أن تكون بالتنسيق YYYY-" "MM-DD." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1425 -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1560 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1358 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1493 #, python-format msgid "" "“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid " @@ -2164,11 +2158,11 @@ msgstr "" "القيمة “%(value)s” تحتوي على التنسيق الصحيح (YYYY-MM-DD) لكنها تاريخ غير " "صالح." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1429 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1362 msgid "Date (without time)" msgstr "تاريخ (بدون وقت)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1556 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1489 #, python-format msgid "" "“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[." @@ -2177,7 +2171,7 @@ msgstr "" "القيمة “%(value)s” تحتوي على تنسيق غير صالح. يجب أن تكون بالتنسيق YYYY-MM-DD " "HH:MM[:ss[.uuuuuu]][TZ]." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1564 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1497 #, python-format msgid "" "“%(value)s” value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]" @@ -2186,20 +2180,20 @@ msgstr "" "القيمة “%(value)s” تحتوي على التنسيق الصحيح (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]" "[TZ]) لكنها تاريخ/وقت غير صالح." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1569 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1502 msgid "Date (with time)" msgstr "تاريخ (مع الوقت)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1696 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1626 #, python-format msgid "“%(value)s” value must be a decimal number." msgstr "القيمة “%(value)s” يجب أن تكون رقماً عشرياً." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1698 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1628 msgid "Decimal number" msgstr "رقم عشري" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1859 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1789 #, python-format msgid "" "“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[." @@ -2208,84 +2202,84 @@ msgstr "" "القيمة “%(value)s” تحتوي على تنسيق غير صالح. يجب أن تكون بالتنسيق [DD] " "[[HH:]MM:]ss[.uuuuuu]." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1863 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1793 msgid "Duration" msgstr "المدة" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1915 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1845 msgid "Email address" msgstr "عنوان البريد الإلكتروني" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:1940 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1870 msgid "File path" msgstr "مسار الملف" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2018 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1948 #, python-format msgid "“%(value)s” value must be a float." msgstr "القيمة “%(value)s” يجب أن تكون عدداً عشرياً." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2020 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1950 msgid "Floating point number" msgstr "عدد عشري" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2060 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1990 #, python-format msgid "“%(value)s” value must be an integer." msgstr "القيمة “%(value)s” يجب أن تكون عدداً صحيحاً." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2062 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:1992 msgid "Integer" msgstr "عدد صحيح" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2158 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2088 msgid "Big (8 byte) integer" msgstr "عدد صحيح كبير (8 بايت)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2175 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2105 msgid "Small integer" msgstr "عدد صحيح صغير" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2183 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2113 msgid "IPv4 address" msgstr "عنوان IPv4" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2214 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2144 msgid "IP address" msgstr "عنوان IP" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2305 -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2306 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2237 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2238 #, python-format msgid "“%(value)s” value must be either None, True or False." msgstr "القيمة “%(value)s” يجب أن تكون إما None، True أو False." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2308 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2240 msgid "Boolean (Either True, False or None)" msgstr "قيمة منطقية (إما True أو False أو None)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2359 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2291 msgid "Positive big integer" msgstr "عدد صحيح موجب كبير" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2374 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2306 msgid "Positive integer" msgstr "عدد صحيح موجب" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2389 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2321 msgid "Positive small integer" msgstr "عدد صحيح موجب صغير" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2405 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2337 #, python-format msgid "Slug (up to %(max_length)s)" msgstr "Slug (حتى %(max_length)s)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2441 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2373 msgid "Text" msgstr "النص" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2521 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2448 #, python-format msgid "" "“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] " @@ -2294,7 +2288,7 @@ msgstr "" "القيمة “%(value)s” تحتوي على تنسيق غير صالح. يجب أن تكون بالتنسيق HH:MM[:ss[." "uuuuuu]]." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2525 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2452 #, python-format msgid "" "“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an " @@ -2303,120 +2297,120 @@ msgstr "" "القيمة “%(value)s” تحتوي على التنسيق الصحيح (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]" "[TZ]) لكنها تاريخ/وقت غير صالح." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2529 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2456 msgid "Time" msgstr "الوقت" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2637 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2564 msgid "URL" msgstr "رابط URL" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2661 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2588 msgid "Raw binary data" msgstr "بيانات ثنائية خام" -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2726 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2653 #, python-format msgid "“%(value)s” is not a valid UUID." msgstr "القيمة “%(value)s” ليست UUID صالح." -#: venv/lib/python3.11/site-packages/django/db/models/fields/__init__.py:2728 +#: venv/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2655 msgid "Universally unique identifier" msgstr "معرّف فريد عالمي" -#: venv/lib/python3.11/site-packages/django/db/models/fields/files.py:244 +#: venv/lib/python3.12/site-packages/django/db/models/fields/files.py:232 msgid "File" msgstr "الملف" -#: venv/lib/python3.11/site-packages/django/db/models/fields/files.py:420 +#: venv/lib/python3.12/site-packages/django/db/models/fields/files.py:393 msgid "Image" msgstr "الصورة" -#: venv/lib/python3.11/site-packages/django/db/models/fields/json.py:24 +#: venv/lib/python3.12/site-packages/django/db/models/fields/json.py:26 msgid "A JSON object" msgstr "كائن JSON" -#: venv/lib/python3.11/site-packages/django/db/models/fields/json.py:26 +#: venv/lib/python3.12/site-packages/django/db/models/fields/json.py:28 msgid "Value must be valid JSON." msgstr "يجب أن تكون القيمة JSON صالح." -#: venv/lib/python3.11/site-packages/django/db/models/fields/related.py:932 +#: venv/lib/python3.12/site-packages/django/db/models/fields/related.py:919 #, python-format msgid "%(model)s instance with %(field)s %(value)r does not exist." msgstr "المثال %(model)s مع %(field)s %(value)r غير موجود." -#: venv/lib/python3.11/site-packages/django/db/models/fields/related.py:934 +#: venv/lib/python3.12/site-packages/django/db/models/fields/related.py:921 msgid "Foreign Key (type determined by related field)" msgstr "مفتاح أجنبي (يحدد النوع حسب الحقل المرتبط)" -#: venv/lib/python3.11/site-packages/django/db/models/fields/related.py:1228 +#: venv/lib/python3.12/site-packages/django/db/models/fields/related.py:1212 msgid "One-to-one relationship" msgstr "علاقة واحد لواحد" -#: venv/lib/python3.11/site-packages/django/db/models/fields/related.py:1285 +#: venv/lib/python3.12/site-packages/django/db/models/fields/related.py:1269 #, python-format msgid "%(from)s-%(to)s relationship" msgstr "علاقة %(from)s-%(to)s" -#: venv/lib/python3.11/site-packages/django/db/models/fields/related.py:1287 +#: venv/lib/python3.12/site-packages/django/db/models/fields/related.py:1271 #, python-format msgid "%(from)s-%(to)s relationships" msgstr "علاقات %(from)s-%(to)s" -#: venv/lib/python3.11/site-packages/django/db/models/fields/related.py:1335 +#: venv/lib/python3.12/site-packages/django/db/models/fields/related.py:1319 msgid "Many-to-many relationship" msgstr "علاقة متعدد لمتعدد" #. Translators: If found as last label character, these punctuation #. characters will prevent the default label_suffix to be appended to the label -#: venv/lib/python3.11/site-packages/django/forms/boundfield.py:185 +#: venv/lib/python3.12/site-packages/django/forms/boundfield.py:184 msgid ":?.!" msgstr ":؟.!" -#: venv/lib/python3.11/site-packages/django/forms/fields.py:95 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:91 msgid "This field is required." msgstr "هذا الحقل مطلوب." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:308 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:298 msgid "Enter a whole number." msgstr "أدخل عدداً صحيحاً." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:479 -#: venv/lib/python3.11/site-packages/django/forms/fields.py:1260 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:467 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:1241 msgid "Enter a valid date." msgstr "أدخل تاريخاً صالحاً." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:502 -#: venv/lib/python3.11/site-packages/django/forms/fields.py:1261 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:490 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:1242 msgid "Enter a valid time." msgstr "أدخل وقتاً صالحاً." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:529 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:517 msgid "Enter a valid date/time." msgstr "أدخل تاريخاً/وقتاً صالحاً." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:563 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:551 msgid "Enter a valid duration." msgstr "أدخل مدة صالحة." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:564 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:552 #, python-brace-format msgid "The number of days must be between {min_days} and {max_days}." msgstr "يجب أن يكون عدد الأيام بين {min_days} و {max_days}." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:633 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:621 msgid "No file was submitted. Check the encoding type on the form." msgstr "لم يتم تقديم ملف. تحقق من نوع الترميز في النموذج." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:634 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:622 msgid "No file was submitted." msgstr "لم يتم تقديم أي ملف." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:635 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:623 msgid "The submitted file is empty." msgstr "الملف المقدم فارغ." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:637 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:625 #, python-format msgid "Ensure this filename has at most %(max)d character (it has %(length)d)." msgid_plural "" @@ -2426,53 +2420,54 @@ msgstr[0] "" msgstr[1] "" "تأكد من أن اسم الملف يحتوي على %(max)d أحرف كحد أقصى (يحتوي على %(length)d)." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:642 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:630 msgid "Please either submit a file or check the clear checkbox, not both." msgstr "يرجى إما تقديم ملف أو تحديد خانة الإزالة، وليس كليهما." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:710 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:694 msgid "" "Upload a valid image. The file you uploaded was either not an image or a " "corrupted image." msgstr "" "قم بتحميل صورة صالحة. الملف الذي قمت بتحميله إما ليس صورة أو صورة تالفة." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:882 -#: venv/lib/python3.11/site-packages/django/forms/fields.py:968 -#: venv/lib/python3.11/site-packages/django/forms/models.py:1592 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:857 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:949 +#: venv/lib/python3.12/site-packages/django/forms/models.py:1566 #, python-format msgid "Select a valid choice. %(value)s is not one of the available choices." msgstr "اختر خياراً صالحاً. %(value)s ليس أحد الخيارات المتاحة." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:970 -#: venv/lib/python3.11/site-packages/django/forms/fields.py:1089 -#: venv/lib/python3.11/site-packages/django/forms/models.py:1590 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:951 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:1070 +#: venv/lib/python3.12/site-packages/django/forms/models.py:1564 msgid "Enter a list of values." msgstr "أدخل قائمة بالقيم." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:1090 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:1071 msgid "Enter a complete value." msgstr "أدخل قيمة كاملة." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:1329 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:1310 msgid "Enter a valid UUID." msgstr "أدخل UUID صالحاً." -#: venv/lib/python3.11/site-packages/django/forms/fields.py:1359 +#: venv/lib/python3.12/site-packages/django/forms/fields.py:1340 msgid "Enter a valid JSON." msgstr "أدخل JSON صالحاً." #. Translators: This is the default suffix added to form field labels -#: venv/lib/python3.11/site-packages/django/forms/forms.py:94 +#: venv/lib/python3.12/site-packages/django/forms/forms.py:98 msgid ":" msgstr ":" -#: venv/lib/python3.11/site-packages/django/forms/forms.py:230 +#: venv/lib/python3.12/site-packages/django/forms/forms.py:244 +#: venv/lib/python3.12/site-packages/django/forms/forms.py:328 #, python-format msgid "(Hidden field %(name)s) %(error)s" msgstr "(الحقل المخفي %(name)s) %(error)s" -#: venv/lib/python3.11/site-packages/django/forms/formsets.py:61 +#: venv/lib/python3.12/site-packages/django/forms/formsets.py:63 #, python-format msgid "" "ManagementForm data is missing or has been tampered with. Missing fields: " @@ -2481,36 +2476,36 @@ msgstr "" "بيانات نموذج الإدارة مفقودة أو تم العبث بها. الحقول المفقودة: " "%(field_names)s. قد تحتاج إلى تقديم تقرير عن المشكلة إذا استمرت." -#: venv/lib/python3.11/site-packages/django/forms/formsets.py:65 +#: venv/lib/python3.12/site-packages/django/forms/formsets.py:67 #, python-format msgid "Please submit at most %(num)d form." msgid_plural "Please submit at most %(num)d forms." msgstr[0] "يرجى تقديم ما لا يزيد عن %(num)d نموذج." msgstr[1] "يرجى تقديم ما لا يزيد عن %(num)d نماذج." -#: venv/lib/python3.11/site-packages/django/forms/formsets.py:70 +#: venv/lib/python3.12/site-packages/django/forms/formsets.py:72 #, python-format msgid "Please submit at least %(num)d form." msgid_plural "Please submit at least %(num)d forms." msgstr[0] "يرجى تقديم ما لا يقل عن %(num)d نموذج." msgstr[1] "يرجى تقديم ما لا يقل عن %(num)d نماذج." -#: venv/lib/python3.11/site-packages/django/forms/formsets.py:484 -#: venv/lib/python3.11/site-packages/django/forms/formsets.py:491 +#: venv/lib/python3.12/site-packages/django/forms/formsets.py:484 +#: venv/lib/python3.12/site-packages/django/forms/formsets.py:491 msgid "Order" msgstr "طلب" -#: venv/lib/python3.11/site-packages/django/forms/models.py:901 +#: venv/lib/python3.12/site-packages/django/forms/models.py:886 #, python-format msgid "Please correct the duplicate data for %(field)s." msgstr "يرجى تصحيح البيانات المكررة لـ %(field)s." -#: venv/lib/python3.11/site-packages/django/forms/models.py:906 +#: venv/lib/python3.12/site-packages/django/forms/models.py:891 #, python-format msgid "Please correct the duplicate data for %(field)s, which must be unique." msgstr "يرجى تصحيح البيانات المكررة لـ %(field)s، والتي يجب أن تكون فريدة." -#: venv/lib/python3.11/site-packages/django/forms/models.py:913 +#: venv/lib/python3.12/site-packages/django/forms/models.py:898 #, python-format msgid "" "Please correct the duplicate data for %(field_name)s which must be unique " @@ -2519,24 +2514,24 @@ msgstr "" "يرجى تصحيح البيانات المكررة لـ %(field_name)s والتي يجب أن تكون فريدة لـ " "%(lookup)s في %(date_field)s." -#: venv/lib/python3.11/site-packages/django/forms/models.py:922 +#: venv/lib/python3.12/site-packages/django/forms/models.py:907 msgid "Please correct the duplicate values below." msgstr "يرجى تصحيح القيم المكررة أدناه." -#: venv/lib/python3.11/site-packages/django/forms/models.py:1359 +#: venv/lib/python3.12/site-packages/django/forms/models.py:1338 msgid "The inline value did not match the parent instance." msgstr "القيمة المضمنة لا تتطابق مع المثال الأب." -#: venv/lib/python3.11/site-packages/django/forms/models.py:1450 +#: venv/lib/python3.12/site-packages/django/forms/models.py:1429 msgid "Select a valid choice. That choice is not one of the available choices." msgstr "اختر خياراً صالحاً. هذا الخيار ليس من الخيارات المتاحة." -#: venv/lib/python3.11/site-packages/django/forms/models.py:1594 +#: venv/lib/python3.12/site-packages/django/forms/models.py:1568 #, python-format msgid "“%(pk)s” is not a valid value." msgstr "“%(pk)s” ليست قيمة صالحة." -#: venv/lib/python3.11/site-packages/django/forms/utils.py:227 +#: venv/lib/python3.12/site-packages/django/forms/utils.py:226 #, python-format msgid "" "%(datetime)s couldn’t be interpreted in time zone %(current_timezone)s; it " @@ -2545,435 +2540,435 @@ msgstr "" "لم يتم تفسير %(datetime)s في المنطقة الزمنية %(current_timezone)s؛ قد يكون " "غامضاً أو قد لا يكون موجوداً." -#: venv/lib/python3.11/site-packages/django/forms/widgets.py:461 +#: venv/lib/python3.12/site-packages/django/forms/widgets.py:463 msgid "Clear" msgstr "مسح" -#: venv/lib/python3.11/site-packages/django/forms/widgets.py:462 +#: venv/lib/python3.12/site-packages/django/forms/widgets.py:464 msgid "Currently" msgstr "حالياً" -#: venv/lib/python3.11/site-packages/django/forms/widgets.py:463 +#: venv/lib/python3.12/site-packages/django/forms/widgets.py:465 msgid "Change" msgstr "تغيير" -#: venv/lib/python3.11/site-packages/django/forms/widgets.py:800 +#: venv/lib/python3.12/site-packages/django/forms/widgets.py:794 msgid "Unknown" msgstr "غير معروف" #. Translators: Please do not add spaces around commas. -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:873 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:874 msgid "yes,no,maybe" msgstr "نعم، لا، ربما" -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:903 -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:920 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:904 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:921 #, python-format msgid "%(size)d byte" msgid_plural "%(size)d bytes" msgstr[0] "%(size)d بايت" msgstr[1] "%(size)d بايتات" -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:922 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:923 #, python-format msgid "%s KB" msgstr "%s كيلوبايت" -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:924 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:925 #, python-format msgid "%s MB" msgstr "%s ميغابايت" -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:926 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:927 #, python-format msgid "%s GB" msgstr "%s غيغابايت" -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:928 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:929 #, python-format msgid "%s TB" msgstr "%s تيرابايت" -#: venv/lib/python3.11/site-packages/django/template/defaultfilters.py:930 +#: venv/lib/python3.12/site-packages/django/template/defaultfilters.py:931 #, python-format msgid "%s PB" msgstr "%s بيتابايت" -#: venv/lib/python3.11/site-packages/django/utils/dateformat.py:74 +#: venv/lib/python3.12/site-packages/django/utils/dateformat.py:73 msgid "p.m." msgstr "م" -#: venv/lib/python3.11/site-packages/django/utils/dateformat.py:75 +#: venv/lib/python3.12/site-packages/django/utils/dateformat.py:74 msgid "a.m." msgstr "ص" -#: venv/lib/python3.11/site-packages/django/utils/dateformat.py:80 +#: venv/lib/python3.12/site-packages/django/utils/dateformat.py:79 msgid "PM" msgstr "م" -#: venv/lib/python3.11/site-packages/django/utils/dateformat.py:81 +#: venv/lib/python3.12/site-packages/django/utils/dateformat.py:80 msgid "AM" msgstr "ص" -#: venv/lib/python3.11/site-packages/django/utils/dateformat.py:153 +#: venv/lib/python3.12/site-packages/django/utils/dateformat.py:152 msgid "midnight" msgstr "منتصف الليل" -#: venv/lib/python3.11/site-packages/django/utils/dateformat.py:155 +#: venv/lib/python3.12/site-packages/django/utils/dateformat.py:154 msgid "noon" msgstr "الظهر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:7 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:7 msgid "Monday" msgstr "الاثنين" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:8 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:8 msgid "Tuesday" msgstr "الثلاثاء" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:9 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:9 msgid "Wednesday" msgstr "الأربعاء" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:10 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:10 msgid "Thursday" msgstr "الخميس" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:11 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:11 msgid "Friday" msgstr "الجمعة" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:12 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:12 msgid "Saturday" msgstr "السبت" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:13 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:13 msgid "Sunday" msgstr "الأحد" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:25 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:749 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:25 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:749 msgid "January" msgstr "يناير" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:26 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:750 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:26 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:750 msgid "February" msgstr "فبراير" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:27 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:751 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:27 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:751 msgid "March" msgstr "مارس" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:28 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:752 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:28 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:752 msgid "April" msgstr "أبريل" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:29 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:753 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:29 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:753 msgid "May" msgstr "مايو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:30 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:754 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:30 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:754 msgid "June" msgstr "يونيو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:31 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:755 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:31 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:755 msgid "July" msgstr "يوليو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:32 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:756 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:32 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:756 msgid "August" msgstr "أغسطس" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:33 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:757 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:33 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:757 msgid "September" msgstr "سبتمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:34 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:758 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:34 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:758 msgid "October" msgstr "أكتوبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:35 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:759 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:35 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:759 msgid "November" msgstr "نوفمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:36 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:760 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:36 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:760 msgid "December" msgstr "ديسمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:39 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:39 msgid "jan" msgstr "يناير" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:40 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:40 msgid "feb" msgstr "فبراير" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:41 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:41 msgid "mar" msgstr "مارس" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:42 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:42 msgid "apr" msgstr "أبريل" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:43 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:43 msgid "may" msgstr "مايو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:44 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:44 msgid "jun" msgstr "يونيو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:45 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:45 msgid "jul" msgstr "يوليو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:46 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:46 msgid "aug" msgstr "أغسطس" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:47 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:47 msgid "sep" msgstr "سبتمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:48 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:48 msgid "oct" msgstr "أكتوبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:49 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:49 msgid "nov" msgstr "نوفمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:50 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:50 msgid "dec" msgstr "ديسمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:53 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:53 #, fuzzy #| msgid "Jan." msgctxt "abbrev. month" msgid "Jan." msgstr "يناير." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:54 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:54 #, fuzzy #| msgid "Feb." msgctxt "abbrev. month" msgid "Feb." msgstr "فبراير." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:55 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:55 #, fuzzy #| msgid "March" msgctxt "abbrev. month" msgid "March" msgstr "مارس." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:56 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:56 #, fuzzy #| msgid "April" msgctxt "abbrev. month" msgid "April" msgstr "أبريل." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:57 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:57 #, fuzzy #| msgid "May" msgctxt "abbrev. month" msgid "May" msgstr "مايو." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:58 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:58 #, fuzzy #| msgid "June" msgctxt "abbrev. month" msgid "June" msgstr "يونيو." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:59 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:59 #, fuzzy #| msgid "July" msgctxt "abbrev. month" msgid "July" msgstr "يوليو." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:60 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:60 #, fuzzy #| msgid "Aug." msgctxt "abbrev. month" msgid "Aug." msgstr "أغسطس." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:61 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:61 #, fuzzy #| msgid "Sept." msgctxt "abbrev. month" msgid "Sept." msgstr "سبتمبر." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:62 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:62 #, fuzzy #| msgid "Oct." msgctxt "abbrev. month" msgid "Oct." msgstr "أكتوبر." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:63 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:63 #, fuzzy #| msgid "Nov." msgctxt "abbrev. month" msgid "Nov." msgstr "نوفمبر." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:64 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:64 #, fuzzy #| msgid "Dec." msgctxt "abbrev. month" msgid "Dec." msgstr "ديسمبر." -#: venv/lib/python3.11/site-packages/django/utils/dates.py:67 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:67 msgctxt "alt. month" msgid "January" msgstr "يناير" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:68 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:68 msgctxt "alt. month" msgid "February" msgstr "فبراير" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:69 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:69 msgctxt "alt. month" msgid "March" msgstr "مارس" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:70 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:70 msgctxt "alt. month" msgid "April" msgstr "أبريل" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:71 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:71 msgctxt "alt. month" msgid "May" msgstr "مايو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:72 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:72 msgctxt "alt. month" msgid "June" msgstr "يونيو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:73 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:73 msgctxt "alt. month" msgid "July" msgstr "يوليو" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:74 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:74 msgctxt "alt. month" msgid "August" msgstr "أغسطس" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:75 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:75 msgctxt "alt. month" msgid "September" msgstr "سبتمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:76 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:76 msgctxt "alt. month" msgid "October" msgstr "أكتوبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:77 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:77 msgctxt "alt. month" msgid "November" msgstr "نوفمبر" -#: venv/lib/python3.11/site-packages/django/utils/dates.py:78 +#: venv/lib/python3.12/site-packages/django/utils/dates.py:78 msgctxt "alt. month" msgid "December" msgstr "ديسمبر" -#: venv/lib/python3.11/site-packages/django/utils/ipv6.py:8 +#: venv/lib/python3.12/site-packages/django/utils/ipv6.py:8 msgid "This is not a valid IPv6 address." msgstr "هذا ليس عنوان IPv6 صالحاً." -#: venv/lib/python3.11/site-packages/django/utils/text.py:75 +#: venv/lib/python3.12/site-packages/django/utils/text.py:137 #, python-format msgctxt "String to return when truncating text" msgid "%(truncated_text)s…" msgstr "%(truncated_text)s…" -#: venv/lib/python3.11/site-packages/django/utils/text.py:286 +#: venv/lib/python3.12/site-packages/django/utils/text.py:322 msgid "or" msgstr "أو" #. Translators: This string is used as a separator between list elements -#: venv/lib/python3.11/site-packages/django/utils/text.py:305 -#: venv/lib/python3.11/site-packages/django/utils/timesince.py:135 +#: venv/lib/python3.12/site-packages/django/utils/text.py:341 +#: venv/lib/python3.12/site-packages/django/utils/timesince.py:135 msgid ", " msgstr "، " -#: venv/lib/python3.11/site-packages/django/utils/timesince.py:8 +#: venv/lib/python3.12/site-packages/django/utils/timesince.py:8 #, python-format msgid "%(num)d year" msgid_plural "%(num)d years" msgstr[0] "%(num)d سنة" msgstr[1] "%(num)d سنوات" -#: venv/lib/python3.11/site-packages/django/utils/timesince.py:9 +#: venv/lib/python3.12/site-packages/django/utils/timesince.py:9 #, python-format msgid "%(num)d month" msgid_plural "%(num)d months" msgstr[0] "%(num)d شهر" msgstr[1] "%(num)d أشهر" -#: venv/lib/python3.11/site-packages/django/utils/timesince.py:10 +#: venv/lib/python3.12/site-packages/django/utils/timesince.py:10 #, python-format msgid "%(num)d week" msgid_plural "%(num)d weeks" msgstr[0] "%(num)d أسبوع" msgstr[1] "%(num)d أسابيع" -#: venv/lib/python3.11/site-packages/django/utils/timesince.py:11 +#: venv/lib/python3.12/site-packages/django/utils/timesince.py:11 #, python-format msgid "%(num)d day" msgid_plural "%(num)d days" msgstr[0] "%(num)d يوم" msgstr[1] "%(num)d أيام" -#: venv/lib/python3.11/site-packages/django/utils/timesince.py:12 +#: venv/lib/python3.12/site-packages/django/utils/timesince.py:12 #, python-format msgid "%(num)d hour" msgid_plural "%(num)d hours" msgstr[0] "%(num)d ساعة" msgstr[1] "%(num)d ساعات" -#: venv/lib/python3.11/site-packages/django/utils/timesince.py:13 +#: venv/lib/python3.12/site-packages/django/utils/timesince.py:13 #, python-format msgid "%(num)d minute" msgid_plural "%(num)d minutes" msgstr[0] "%(num)d دقيقة" msgstr[1] "%(num)d دقائق" -#: venv/lib/python3.11/site-packages/django/views/csrf.py:29 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:111 msgid "Forbidden" msgstr "ممنوع" -#: venv/lib/python3.11/site-packages/django/views/csrf.py:30 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:112 msgid "CSRF verification failed. Request aborted." msgstr "فشل التحقق من CSRF. تم إيقاف الطلب." -#: venv/lib/python3.11/site-packages/django/views/csrf.py:34 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:116 msgid "" "You are seeing this message because this HTTPS site requires a “Referer " "header” to be sent by your web browser, but none was sent. This header is " @@ -2984,7 +2979,7 @@ msgstr "" "متصفحك، ولكن لم يتم إرسال أي ترويسة. هذه الترويسة مطلوبة لأسباب أمنية، " "للتأكد من أن متصفحك لم يتم اختطافه من قبل أطراف ثالثة." -#: venv/lib/python3.11/site-packages/django/views/csrf.py:40 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:122 msgid "" "If you have configured your browser to disable “Referer” headers, please re-" "enable them, at least for this site, or for HTTPS connections, or for “same-" @@ -2993,7 +2988,7 @@ msgstr "" "إذا قمت بتكوين متصفحك لتعطيل ترويسات “Referer”، يرجى إعادة تمكينها، على " "الأقل لهذا الموقع، أو للاتصالات HTTPS، أو للطلبات من “نفس المصدر”." -#: venv/lib/python3.11/site-packages/django/views/csrf.py:45 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:127 msgid "" "If you are using the tag or " "including the “Referrer-Policy: no-referrer” header, please remove them. The " @@ -3007,7 +3002,7 @@ msgstr "" "الخصوصية، استخدم بدائل مثل للروابط إلى مواقع الطرف " "الثالث." -#: venv/lib/python3.11/site-packages/django/views/csrf.py:54 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:136 msgid "" "You are seeing this message because this site requires a CSRF cookie when " "submitting forms. This cookie is required for security reasons, to ensure " @@ -3017,7 +3012,7 @@ msgstr "" "النماذج. هذا الملف مطلوب لأسباب أمنية، للتأكد من أن متصفحك لم يتم اختطافه من " "قبل أطراف ثالثة." -#: venv/lib/python3.11/site-packages/django/views/csrf.py:60 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:142 msgid "" "If you have configured your browser to disable cookies, please re-enable " "them, at least for this site, or for “same-origin” requests." @@ -3025,39 +3020,39 @@ msgstr "" "إذا قمت بتكوين متصفحك لتعطيل ملفات تعريف الارتباط، يرجى إعادة تمكينها، على " "الأقل لهذا الموقع، أو للطلبات من “نفس المصدر”." -#: venv/lib/python3.11/site-packages/django/views/csrf.py:66 +#: venv/lib/python3.12/site-packages/django/views/csrf.py:148 msgid "More information is available with DEBUG=True." msgstr "مزيد من المعلومات متاحة مع DEBUG=True." -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:44 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:44 msgid "No year specified" msgstr "لم يتم تحديد السنة" -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:64 -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:115 -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:214 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:64 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:115 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:214 msgid "Date out of range" msgstr "التاريخ خارج النطاق" -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:94 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:94 msgid "No month specified" msgstr "لم يتم تحديد الشهر" -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:147 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:147 msgid "No day specified" msgstr "لم يتم تحديد اليوم" -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:194 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:194 msgid "No week specified" msgstr "لم يتم تحديد الأسبوع" -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:349 -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:380 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:349 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:380 #, python-format msgid "No %(verbose_name_plural)s available" msgstr "لا توجد %(verbose_name_plural)s متاحة" -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:652 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:652 #, python-format msgid "" "Future %(verbose_name_plural)s not available because %(class_name)s." @@ -3066,52 +3061,50 @@ msgstr "" "%(verbose_name_plural)s المستقبلية غير متاحة لأن %(class_name)s. الخاصية " "allow_future هي False." -#: venv/lib/python3.11/site-packages/django/views/generic/dates.py:692 +#: venv/lib/python3.12/site-packages/django/views/generic/dates.py:692 #, python-format msgid "Invalid date string “%(datestr)s” given format “%(format)s”" msgstr "سلسلة التاريخ غير صالحة “%(datestr)s” بالصيغة “%(format)s”" -#: venv/lib/python3.11/site-packages/django/views/generic/detail.py:56 +#: venv/lib/python3.12/site-packages/django/views/generic/detail.py:56 #, python-format msgid "No %(verbose_name)s found matching the query" msgstr "لم يتم العثور على %(verbose_name)s مطابق للاستعلام" -#: venv/lib/python3.11/site-packages/django/views/generic/list.py:70 +#: venv/lib/python3.12/site-packages/django/views/generic/list.py:70 msgid "Page is not “last”, nor can it be converted to an int." msgstr "الصفحة ليست “الأخيرة”، ولا يمكن تحويلها إلى عدد صحيح." -#: venv/lib/python3.11/site-packages/django/views/generic/list.py:77 +#: venv/lib/python3.12/site-packages/django/views/generic/list.py:77 #, python-format msgid "Invalid page (%(page_number)s): %(message)s" msgstr "صفحة غير صالحة (%(page_number)s): %(message)s" -#: venv/lib/python3.11/site-packages/django/views/generic/list.py:169 +#: venv/lib/python3.12/site-packages/django/views/generic/list.py:169 #, python-format msgid "Empty list and “%(class_name)s.allow_empty” is False." msgstr "قائمة فارغة والخاصية “%(class_name)s.allow_empty” هي False." -#: venv/lib/python3.11/site-packages/django/views/static.py:49 +#: venv/lib/python3.12/site-packages/django/views/static.py:38 msgid "Directory indexes are not allowed here." msgstr "الفهارس الدليلية غير مسموح بها هنا." -#: venv/lib/python3.11/site-packages/django/views/static.py:51 +#: venv/lib/python3.12/site-packages/django/views/static.py:40 #, python-format msgid "“%(path)s” does not exist" msgstr "“%(path)s” غير موجود" -#: venv/lib/python3.11/site-packages/django/views/static.py:68 -#: venv/lib/python3.11/site-packages/django/views/templates/directory_index.html:8 -#: venv/lib/python3.11/site-packages/django/views/templates/directory_index.html:11 +#: venv/lib/python3.12/site-packages/django/views/static.py:79 #, python-format msgid "Index of %(directory)s" msgstr "فهرس %(directory)s" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:7 -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:204 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:7 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:220 msgid "The install worked successfully! Congratulations!" msgstr "تم التثبيت بنجاح! تهانينا!" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:206 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:206 #, python-format msgid "" "View ملاحظات الإصدار لـ Django %(version)s" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:208 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:221 #, python-format msgid "" "You are seeing this page because DEBUG=True موجودة في ملف الإعدادات الخاص بك ولم تقم " "بتكوين أي عناوين URL." -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:217 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:229 msgid "Django Documentation" msgstr "وثائق Django" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:218 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:230 msgid "Topics, references, & how-to’s" msgstr "الموضوعات، المراجع، والإرشادات" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:226 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:238 msgid "Tutorial: A Polling App" msgstr "البرنامج التعليمي: تطبيق استطلاع" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:227 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:239 msgid "Get started with Django" msgstr "ابدأ مع Django" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:235 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:247 msgid "Django Community" msgstr "مجتمع Django" -#: venv/lib/python3.11/site-packages/django/views/templates/default_urlconf.html:236 +#: venv/lib/python3.12/site-packages/django/views/templates/default_urlconf.html:248 msgid "Connect, get help, or contribute" msgstr "اتصل، احصل على المساعدة، أو ساهم" -#: venv/lib/python3.11/site-packages/django_bootstrap5/components.py:26 +#: venv/lib/python3.12/site-packages/django_bootstrap5/components.py:26 msgid "close" msgstr "إغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/forms/account.py:72 +#: venv/lib/python3.12/site-packages/django_ledger/forms/account.py:72 msgid "Alpha Numeric (auto generated if not provided)..." msgstr "أبجدي رقمي (يتم توليده تلقائياً إذا لم يتم توفيره)..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/account.py:76 +#: venv/lib/python3.12/site-packages/django_ledger/forms/account.py:76 msgid "Account Name..." msgstr "اسم الحساب..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/account.py:104 +#: venv/lib/python3.12/site-packages/django_ledger/forms/account.py:104 msgid "Position" msgstr "الموضع" -#: venv/lib/python3.11/site-packages/django_ledger/forms/account.py:109 +#: venv/lib/python3.12/site-packages/django_ledger/forms/account.py:109 msgid "Relative to" msgstr "نسبياً إلى" -#: venv/lib/python3.11/site-packages/django_ledger/forms/auth.py:15 +#: venv/lib/python3.12/site-packages/django_ledger/forms/auth.py:15 msgid "Password" msgstr "كلمة المرور" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:54 -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:102 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:54 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:102 msgid "Enter account name..." msgstr "أدخل اسم الحساب..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:58 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:58 msgid "Enter account number..." msgstr "أدخل رقم الحساب..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:62 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:62 msgid "Enter routing number..." msgstr "أدخل رقم التوجيه..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:66 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:66 msgid "Enter ABA number..." msgstr "أدخل رقم ABA..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:70 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:70 msgid "Enter SWIFT number..." msgstr "أدخل رقم SWIFT..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:80 -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:428 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:21 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:43 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:80 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:428 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:21 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:43 msgid "Account Name" msgstr "اسم الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:81 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1134 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:81 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1134 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:8 msgid "Account Number" msgstr "رقم الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:82 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1144 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:82 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1144 msgid "Account Type" msgstr "نوع الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:83 -#: venv/lib/python3.11/site-packages/django_ledger/models/bank_account.py:129 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:322 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:222 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:31 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:30 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:83 +#: venv/lib/python3.12/site-packages/django_ledger/models/bank_account.py:129 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:322 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:222 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:30 msgid "Cash Account" msgstr "حساب نقدي" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:84 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1139 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:84 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1139 msgid "ABA Number" msgstr "رقم ABA" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:85 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1138 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:85 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1138 msgid "Routing Number" msgstr "رقم التوجيه" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bank_account.py:86 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bank_account.py:86 msgid "Make Active" msgstr "اجعل نشطاً" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:49 -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:64 -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:375 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:348 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:219 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:26 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:49 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:64 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:375 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:348 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:219 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:26 msgid "Draft Date" msgstr "تاريخ المسودة" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:50 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:50 msgid "Payable Account" msgstr "حساب دائن" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:51 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:51 msgid "Prepaid Expenses Account" msgstr "حساب النفقات المدفوعة مسبقاً" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:56 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:56 msgid "Bill Date (YYYY-MM-DD)..." msgstr "تاريخ الفاتورة (YYYY-MM-DD)..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:131 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:131 msgid "Date (YYYY-MM-DD)..." msgstr "التاريخ (YYYY-MM-DD)..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:152 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:152 msgid "Bill Progress Amount (%)" msgstr "مبلغ تقدم الفاتورة (%)" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:153 -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:118 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:153 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:118 msgid "Will this Bill be Accrued?" msgstr "هل ستتراكم هذه الفاتورة؟" -#: venv/lib/python3.11/site-packages/django_ledger/forms/bill.py:154 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/card_markdown.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/forms/bill.py:154 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/card_markdown.html:9 msgid "Notes" msgstr "ملاحظات" -#: venv/lib/python3.11/site-packages/django_ledger/forms/closing_entry.py:15 +#: venv/lib/python3.12/site-packages/django_ledger/forms/closing_entry.py:15 msgid "Cannot create a closing entry with a future date." msgstr "لا يمكن إنشاء إدخال إغلاق بتاريخ مستقبلي." -#: venv/lib/python3.11/site-packages/django_ledger/forms/closing_entry.py:28 +#: venv/lib/python3.12/site-packages/django_ledger/forms/closing_entry.py:28 msgid "Closing Date (YYYY-MM-DD)..." msgstr "تاريخ الإغلاق (YYYY-MM-DD)..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/closing_entry.py:33 +#: venv/lib/python3.12/site-packages/django_ledger/forms/closing_entry.py:33 msgid "Select a Closing Date" msgstr "اختر تاريخ الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/forms/closing_entry.py:50 +#: venv/lib/python3.12/site-packages/django_ledger/forms/closing_entry.py:50 msgid "Closing Entry Notes" msgstr "ملاحظات إدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/forms/customer.py:40 +#: venv/lib/python3.12/site-packages/django_ledger/forms/coa.py:17 +#: venv/lib/python3.12/site-packages/django_ledger/forms/coa.py:38 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:61 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1144 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:314 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:46 +msgid "Description" +msgstr "الوصف" + +#: venv/lib/python3.12/site-packages/django_ledger/forms/customer.py:40 #, python-format msgid "Example: 3.50% should be entered as 0.035" msgstr "" -#: venv/lib/python3.11/site-packages/django_ledger/forms/data_import.py:29 +#: venv/lib/python3.12/site-packages/django_ledger/forms/data_import.py:29 msgid "What's this import about?..." msgstr "ما هو موضوع هذا الاستيراد؟..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/data_import.py:100 +#: venv/lib/python3.12/site-packages/django_ledger/forms/data_import.py:100 msgid "Cannot import and split at the same time" msgstr "لا يمكن الاستيراد والتقسيم في نفس الوقت" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:20 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:20 msgid "Populate Default CoA" msgstr "ملء دليل الحسابات الافتراضي" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:21 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:21 msgid "Activate All Accounts" msgstr "تفعيل جميع الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:22 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:22 msgid "Fill With Sample Data?" msgstr "ملء بالبيانات النموذجية؟" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:27 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:27 msgid "Please provide a valid name for new Entity." msgstr "يرجى تقديم اسم صالح للكيان الجديد." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:29 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:29 msgid "Looks like this entity name is too short..." msgstr "يبدو أن اسم هذا الكيان قصير جداً..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:62 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:137 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:767 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:62 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:137 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:767 msgid "Entity Name" msgstr "اسم الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:68 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:143 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:68 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:143 msgid "Entity name..." msgstr "اسم الكيان..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:74 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:149 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:74 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:149 msgid "Address line 1" msgstr "العنوان سطر 1" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:78 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:154 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:78 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:154 msgid "Address line 2" msgstr "العنوان سطر 2" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:82 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:159 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:107 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:82 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:159 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:107 msgid "City" msgstr "المدينة" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:86 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:164 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:86 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:164 msgid "State" msgstr "الولاية" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:90 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:169 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:109 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:90 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:169 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:109 msgid "Zip Code" msgstr "الرمز البريدي" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:94 -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:174 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:110 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:94 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:174 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:110 msgid "Country" msgstr "الدولة" -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:98 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:98 msgid "Phone number..." msgstr "رقم الهاتف..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:102 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:102 msgid "Entity email..." msgstr "بريد الكيان الإلكتروني..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:106 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:106 msgid "http://www.mywebsite.com..." msgstr "http://www.mywebsite.com..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:179 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:179 msgid "Email..." msgstr "البريد الإلكتروني..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:185 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:185 msgid "Phone..." msgstr "الهاتف..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/entity.py:191 +#: venv/lib/python3.12/site-packages/django_ledger/forms/entity.py:191 msgid "Website..." msgstr "الموقع الإلكتروني..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/estimate.py:47 +#: venv/lib/python3.12/site-packages/django_ledger/forms/estimate.py:47 msgid "Estimate title..." msgstr "عنوان التقدير..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:9 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:9 msgid "Desktop" msgstr "سطح المكتب" -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:10 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:10 msgid "Tablet" msgstr "جهاز لوحي" -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:11 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:11 msgid "Mobile" msgstr "الهاتف المحمول" -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:15 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:15 msgid "How to reproduce?" msgstr "كيف تعيد إنتاج المشكلة؟" -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:23 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:23 msgid "What did you expect?" msgstr "ماذا كنت تتوقع؟" -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:36 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:36 msgid "What device are you using?" msgstr "ما هو الجهاز الذي تستخدمه؟" -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:41 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:41 msgid "Is your feature request related to a problem? Please describe." msgstr "هل يرتبط طلب ميزتك بمشكلة؟ يرجى الوصف." -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:49 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:49 msgid "Describe the solution you'd like" msgstr "وصف الحل الذي ترغب فيه" -#: venv/lib/python3.11/site-packages/django_ledger/forms/feedback.py:57 +#: venv/lib/python3.12/site-packages/django_ledger/forms/feedback.py:57 msgid "Describe alternatives you've considered" msgstr "وصف البدائل التي فكرت بها" -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:63 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:63 msgid "Invoice Terms" msgstr "شروط الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:65 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:65 msgid "Deferred Revenue Account" msgstr "حساب الإيرادات المؤجلة" -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:66 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:66 msgid "Receivable Account" msgstr "حساب المستحقات" -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:72 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:72 msgid "Invoice Date (YYYY-MM-DD)..." msgstr "تاريخ الفاتورة (YYYY-MM-DD)..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:117 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:117 msgid "Progress Amount 0.00 -> 1.00 (percent)" msgstr "مبلغ التقدم 0.00 -> 1.00 (النسبة)" -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:119 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:38 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:119 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:38 msgid "Amount Received" msgstr "المبلغ المستلم" -#: venv/lib/python3.11/site-packages/django_ledger/forms/invoice.py:129 +#: venv/lib/python3.12/site-packages/django_ledger/forms/invoice.py:129 msgid "Paid Date (YYYY-MM-DD)..." msgstr "تاريخ الدفع (YYYY-MM-DD)..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:120 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:120 msgid "Product Name" msgstr "اسم المنتج" -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:121 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:121 msgid "Product Type" msgstr "نوع المنتج" -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:210 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:210 msgid "Service Name" msgstr "اسم الخدمة" -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:211 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:211 msgid "Sold as Unit?" msgstr "يباع كوحدة؟" -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:261 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:261 msgid "The item name..." msgstr "اسم العنصر..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:277 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:277 msgid "The UPC code of the item, if any..." msgstr "رمز يو بي سي للعنصر، إن وجد..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:287 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:287 msgid "Expense Name" msgstr "اسم المصروف" -#: venv/lib/python3.11/site-packages/django_ledger/forms/item.py:376 +#: venv/lib/python3.12/site-packages/django_ledger/forms/item.py:376 msgid "Inventory Name" msgstr "اسم المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/forms/journal_entry.py:30 +#: venv/lib/python3.12/site-packages/django_ledger/forms/journal_entry.py:30 msgid "Cannot create new Journal Entries on a locked Ledger." msgstr "لا يمكن إنشاء إدخالات يومية جديدة على دفتر حسابات مقفل." -#: venv/lib/python3.11/site-packages/django_ledger/forms/journal_entry.py:56 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3134 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:95 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/forms/journal_entry.py:56 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3134 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:95 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:9 msgid "Entity Unit" msgstr "وحدة الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/forms/journal_entry.py:68 +#: venv/lib/python3.12/site-packages/django_ledger/forms/journal_entry.py:68 msgid "" "Invalid timestamp {self.cleaned_data[\"timestamp\"]} due to Closing Entries." msgstr "" "الطابع الزمني غير صالح {self.cleaned_data[\"timestamp\"]} بسبب إدخالات " "الإغلاق." -#: venv/lib/python3.11/site-packages/django_ledger/forms/ledger.py:43 -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:192 +#: venv/lib/python3.12/site-packages/django_ledger/forms/ledger.py:43 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:192 msgid "Ledger External ID" msgstr "معرف دفتر الحسابات الخارجي" -#: venv/lib/python3.11/site-packages/django_ledger/forms/purchase_order.py:34 +#: venv/lib/python3.12/site-packages/django_ledger/forms/purchase_order.py:34 msgid "Is this an inventory purchase?" msgstr "هل هذا شراء للمخزون؟" -#: venv/lib/python3.11/site-packages/django_ledger/forms/purchase_order.py:59 +#: venv/lib/python3.12/site-packages/django_ledger/forms/purchase_order.py:59 msgid "Fulfillment Date (YYYY-MM-DD)..." msgstr "تاريخ التنفيذ (YYYY-MM-DD)..." -#: venv/lib/python3.11/site-packages/django_ledger/forms/purchase_order.py:66 +#: venv/lib/python3.12/site-packages/django_ledger/forms/purchase_order.py:66 msgid "PO Status" msgstr "حالة طلب الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/forms/purchase_order.py:67 +#: venv/lib/python3.12/site-packages/django_ledger/forms/purchase_order.py:67 msgid "Mark as Fulfilled" msgstr "تمييز كمنفذ" -#: venv/lib/python3.11/site-packages/django_ledger/forms/purchase_order.py:68 +#: venv/lib/python3.12/site-packages/django_ledger/forms/purchase_order.py:68 msgid "PO Notes" msgstr "ملاحظات طلب الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/forms/transactions.py:81 +#: venv/lib/python3.12/site-packages/django_ledger/forms/transactions.py:81 msgid "Credits and Debits do not balance." msgstr "الأرصدة والخصوم غير متوازنة." -#: venv/lib/python3.11/site-packages/django_ledger/forms/unit.py:17 +#: venv/lib/python3.12/site-packages/django_ledger/forms/unit.py:17 msgid "Unit name must be at least 10 characters long" msgstr "يجب أن يتكون اسم الوحدة من 10 أحرف على الأقل" -#: venv/lib/python3.11/site-packages/django_ledger/forms/utils.py:17 +#: venv/lib/python3.12/site-packages/django_ledger/forms/utils.py:17 msgid "Must provide all City/State/Zip/Country" msgstr "يجب توفير جميع المعلومات: المدينة/الولاية/الرمز البريدي/الدولة" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:830 -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:836 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:830 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:836 #, python-brace-format msgid "" "Cannot commit transactions. The journal entry date {je_timestamp} is on a " @@ -3567,28 +3572,28 @@ msgstr "" "لا يمكن تأكيد المعاملات. تاريخ الإدخال اليومي {je_timestamp} يقع في فترة " "مغلقة." -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:842 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:842 msgid "Cannot commit on locked ledger" msgstr "لا يمكن تأكيد المعاملات على دفتر حسابات مقفل" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:878 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:878 msgid "Invalid timestamp type {type(je_timestamp)}" msgstr "نوع الطابع الزمني غير صالح {type(je_timestamp)}" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:881 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:881 #, python-brace-format msgid "Unable to retrieve Journal Entry model with Timestamp {je_timestamp}" msgstr "" "غير قادر على استرداد نموذج الإدخال اليومي بالطابع الزمني {je_timestamp}" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:956 -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:1011 -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:1066 -#: venv/lib/python3.11/site-packages/django_ledger/io/io_core.py:1120 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:956 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:1011 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:1066 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_core.py:1120 msgid "PDF support not enabled. Install PDF support from Pipfile." msgstr "دعم PDF غير ممكّن. قم بتثبيت دعم PDF من Pipfile." -#: venv/lib/python3.11/site-packages/django_ledger/io/io_generator.py:87 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_generator.py:87 #, python-brace-format msgid "" "User {user_model} must have admin privileges for entity model {entity_model}." @@ -3596,40 +3601,40 @@ msgstr "" "يجب أن يمتلك المستخدم {user_model} صلاحيات المدير لنموذج الكيان " "{entity_model}." -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:203 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:203 msgid "Ledger Model must be a string or UUID or LedgerModel" msgstr "يجب أن يكون نموذج دفتر الحسابات عبارة عن سلسلة أو UUID أو LedgerModel" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:235 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:235 msgid "" "Total transactions Credits and Debits must be equal. Got CREDITs: {} and " "DEBITs: {}." msgstr "يجب أن تكون مجموع الأرصدة والخصوم متساوية. الرصيد: {} والخصم: {}." -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:281 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:281 msgid "Transactions already committed" msgstr "المعاملات مؤكدة بالفعل" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:290 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:290 #, python-brace-format msgid "Cannot transact on a locked ledger: {ledger_model}" msgstr "لا يمكن إجراء معاملات على دفتر حسابات مقفل: {ledger_model}" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:307 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:307 msgid "Cannot commit transactions to a non-existing ledger" msgstr "لا يمكن تأكيد المعاملات على دفتر حسابات غير موجود" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:327 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:327 #, python-brace-format msgid "Cannot commit transactions to a non-existing ledger_xid {k}" msgstr "لا يمكن تأكيد المعاملات على دفتر حسابات غير موجود ledger_xid {k}" -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:335 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:335 #, python-brace-format msgid "Ledger UUID {k} not found." msgstr "لم يتم العثور على UUID دفتر الحسابات {k}." -#: venv/lib/python3.11/site-packages/django_ledger/io/io_library.py:356 +#: venv/lib/python3.12/site-packages/django_ledger/io/io_library.py:356 #, python-brace-format msgid "" "Account code {tx.account_code} not found. Is account available and not " @@ -3637,364 +3642,364 @@ msgid "" msgstr "" "لم يتم العثور على رمز الحساب {tx.account_code}. هل الحساب متاح وغير مقفل؟" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:437 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:523 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:437 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:523 msgid "Current Asset" msgstr "الأصول الحالية" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:438 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:524 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:438 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:524 msgid "Marketable Securities" msgstr "الأوراق المالية القابلة للتداول" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:439 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:525 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entity_dashboard.html:50 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:439 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:525 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/entity_dashboard.html:50 msgid "Receivables" msgstr "المستحقات" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:441 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:527 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:441 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:527 msgid "Uncollectibles" msgstr "غير قابلة للتحصيل" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:442 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:528 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:442 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:528 msgid "Prepaid" msgstr "المدفوعة مسبقاً" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:443 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:529 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:443 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:529 msgid "Other Liquid Assets" msgstr "أصول سائلة أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:446 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:532 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:446 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:532 msgid "Notes Receivable" msgstr "السندات المستحقة" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:447 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:533 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:447 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:533 msgid "Land" msgstr "الأرض" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:448 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:534 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:448 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:534 msgid "Securities" msgstr "الأوراق المالية" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:451 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:537 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:451 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:537 msgid "Buildings" msgstr "المباني" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:452 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:538 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:452 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:538 msgid "Buildings - Accum. Depreciation" msgstr "المباني - الإهلاك المتراكم" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:453 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:539 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:453 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:539 msgid "Plant" msgstr "المصنع" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:454 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:540 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:454 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:540 msgid "Plant - Accum. Depreciation" msgstr "المصنع - الإهلاك المتراكم" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:455 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:541 -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:509 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:455 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:541 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:509 msgid "Equipment" msgstr "المعدات" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:456 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:542 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:456 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:542 msgid "Equipment - Accum. Depreciation" msgstr "المعدات - الإهلاك المتراكم" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:459 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:545 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:459 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:545 msgid "Intangible Assets" msgstr "الأصول غير الملموسة" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:460 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:546 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:460 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:546 msgid "Intangible Assets - Accum. Amortization" msgstr "الأصول غير الملموسة - الاستهلاك المتراكم" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:461 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:547 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:461 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:547 msgid "Other Assets" msgstr "أصول أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:466 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:552 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:52 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:466 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:552 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:52 msgid "Accounts Payable" msgstr "الحسابات الدائنة" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:467 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:553 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:467 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:553 msgid "Wages Payable" msgstr "الأجور المستحقة الدفع" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:468 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:554 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:468 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:554 msgid "Interest Payable" msgstr "الفائدة المستحقة الدفع" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:469 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:555 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:469 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:555 msgid "Taxes Payable" msgstr "الضرائب المستحقة الدفع" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:470 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:556 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:470 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:556 msgid "Short Term Notes Payable" msgstr "السندات المستحقة قصيرة الأجل" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:471 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:557 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:471 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:557 msgid "Current Maturities of Long Tern Debt" msgstr "استحقاقات الديون طويلة الأجل الحالية" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:472 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:558 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:51 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:472 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:558 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:51 msgid "Deferred Revenue" msgstr "الإيرادات المؤجلة" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:473 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:559 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:473 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:559 msgid "Other Liabilities" msgstr "التزامات أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:476 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:562 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:476 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:562 msgid "Long Term Notes Payable" msgstr "سندات الدفع طويلة الأجل" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:477 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:563 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:477 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:563 msgid "Bonds Payable" msgstr "السندات المستحقة الدفع" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:478 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:564 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:478 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:564 msgid "Mortgage Payable" msgstr "الرهن العقاري المستحق الدفع" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:483 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:569 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:483 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:569 msgid "Capital" msgstr "رأس المال" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:484 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:570 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:484 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:570 msgid "Common Stock" msgstr "الأسهم العادية" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:485 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:571 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:485 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:571 msgid "Preferred Stock" msgstr "الأسهم الممتازة" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:486 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:572 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:486 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:572 msgid "Other Equity Adjustments" msgstr "تعديلات أخرى على حقوق الملكية" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:487 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:573 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:487 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:573 msgid "Dividends & Distributions to Shareholders" msgstr "الأرباح والتوزيعات للمساهمين" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:490 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:578 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:490 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:578 msgid "Operational Income" msgstr "الدخل التشغيلي" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:491 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:579 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:491 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:579 msgid "Investing/Passive Income" msgstr "الدخل من الاستثمار/الدخل السلبي" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:492 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:580 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:492 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:580 msgid "Interest Income" msgstr "دخل الفائدة" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:493 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:581 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:493 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:581 msgid "Capital Gain/Loss Income" msgstr "دخل مكاسب/خسائر رأس المال" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:494 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:582 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:494 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:582 msgid "Other Income" msgstr "دخل آخر" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:497 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:587 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:497 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:587 msgid "Cost of Goods Sold" msgstr "تكلفة البضائع المباعة" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:500 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:590 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:500 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:590 msgid "Regular Expense" msgstr "المصاريف العادية" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:501 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:591 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:501 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:591 msgid "Interest Expense - Short Term Debt" msgstr "مصاريف الفائدة - الديون قصيرة الأجل" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:502 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:592 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:502 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:592 msgid "Interest Expense - Long Term Debt" msgstr "مصاريف الفائدة - الديون طويلة الأجل" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:503 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:593 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:503 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:593 msgid "Tax Expense" msgstr "مصاريف الضرائب" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:504 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:594 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:504 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:594 msgid "Capital Expense" msgstr "النفقات الرأسمالية" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:505 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:595 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:505 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:595 msgid "Depreciation Expense" msgstr "مصاريف الاستهلاك" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:506 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:596 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:506 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:596 msgid "Amortization Expense" msgstr "مصاريف الاستهلاك المعنوي" -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:507 -#: venv/lib/python3.11/site-packages/django_ledger/io/roles.py:597 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:507 +#: venv/lib/python3.12/site-packages/django_ledger/io/roles.py:597 msgid "Other Expense" msgstr "مصروفات أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:390 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:390 #, python-format msgid "Account code must be alpha numeric, got {%s}" msgstr "يجب أن يكون رمز الحساب مزيجاً من الحروف والأرقام، تم تلقي {%s}" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:422 -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:473 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:12 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:44 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:422 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:473 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:44 msgid "Credit" msgstr "ائتمان" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:423 -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:474 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:13 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:45 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:423 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:474 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:45 msgid "Debit" msgstr "مدين" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:427 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:427 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:20 msgid "Account Code" msgstr "رمز الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:429 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:429 msgid "Account Role" msgstr "دور الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:430 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:430 msgid "Coa Role Default Account" msgstr "حساب الدور الافتراضي لقائمة الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:431 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:431 msgid "Account Balance Type" msgstr "نوع رصيد الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:432 -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:328 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:25 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:13 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:432 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:328 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:14 msgid "Locked" msgstr "مقفل" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:433 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:26 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:433 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:26 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:12 msgid "Active" msgstr "نشط" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:443 -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:485 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:13 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:8 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:42 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:443 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:485 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:42 msgid "Account" msgstr "الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:444 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:48 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:444 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:48 msgid "Accounts" msgstr "الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:449 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:449 msgid "Account codes must be unique for each Chart of Accounts Model." msgstr "يجب أن تكون رموز الحساب فريدة لكل نموذج من نماذج دليل الحسابات." -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:454 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:454 msgid "Only one default account for role permitted." msgstr "يُسمح بحساب افتراضي واحد فقط للدور." -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:745 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:745 msgid "" "Cannot lock account {self.code}: {self.name}. Active: {self.is_active()}" msgstr "لا يمكن تنشيط الحساب {self.code}: {self.name}. نشط: {self.is_active()}" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:760 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:760 msgid "" "Cannot unlock account {self.code}: {self.name}. Active: {self.is_active()}" msgstr "لا يمكن تنشيط الحساب {self.code}: {self.name}. نشط: {self.is_active()}" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:788 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:788 msgid "" "Cannot activate account {self.code}: {self.name}. Active: {self.is_active()}" msgstr "لا يمكن تنشيط الحساب {self.code}: {self.name}. نشط: {self.is_active()}" -#: venv/lib/python3.11/site-packages/django_ledger/models/accounts.py:815 +#: venv/lib/python3.12/site-packages/django_ledger/models/accounts.py:815 msgid "" "Cannot deactivate account {self.code}: {self.name}. Active: {self." "is_active()}" msgstr "" "لا يمكن إلغاء تنشيط الحساب {self.code}: {self.name}. نشط: {self.is_active()}" -#: venv/lib/python3.11/site-packages/django_ledger/models/bank_account.py:126 -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:67 -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:378 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3131 -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:251 +#: venv/lib/python3.12/site-packages/django_ledger/models/bank_account.py:126 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:67 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:378 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3131 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:251 msgid "Entity Model" msgstr "نموذج الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/models/bank_account.py:143 -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:459 -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:376 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:428 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:303 +#: venv/lib/python3.12/site-packages/django_ledger/models/bank_account.py:143 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:459 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:376 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:428 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:303 msgid "Must pass user_model when using entity_slug." msgstr "يجب تمرير user_model عند استخدام entity_slug." -#: venv/lib/python3.11/site-packages/django_ledger/models/bank_account.py:165 +#: venv/lib/python3.12/site-packages/django_ledger/models/bank_account.py:165 msgid "Bank Account" msgstr "الحساب المصرفي" @@ -4005,16 +4010,16 @@ msgstr "الحساب المصرفي" msgid "In Review" msgstr "قيد المراجعة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:340 -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:225 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:301 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:194 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:49 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:340 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:225 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:301 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:194 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:49 msgid "Approved" msgstr "تمت الموافقة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:341 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:302 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:341 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:302 msgid "Paid" msgstr "مدفوع" @@ -4029,153 +4034,153 @@ msgstr "مدفوع" msgid "Void" msgstr "باطل" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:351 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:351 msgid "Bill Number" msgstr "رقم الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:355 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:355 msgid "Bill Status" msgstr "حالة الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:356 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:356 msgid "External Reference Number" msgstr "رقم المرجع الخارجي" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:363 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:363 msgid "Bill Additional Info" msgstr "معلومات إضافية عن الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:367 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:85 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:367 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:85 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:8 msgid "Bill Items" msgstr "بنود الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:373 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:346 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:235 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:373 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:346 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:235 msgid "Associated Customer Job/Estimate" msgstr "الوظيفة/التقدير المرتبط بالعميل" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:376 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:349 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:220 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:376 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:349 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:220 msgid "In Review Date" msgstr "تاريخ المراجعة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:377 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:350 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:221 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:38 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:377 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:350 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:221 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:38 msgid "Approved Date" msgstr "تاريخ الموافقة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:378 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:351 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:138 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:126 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:378 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:351 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:138 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:126 msgid "Paid Date" msgstr "تاريخ الدفع" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:379 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:352 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:222 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:379 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:352 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:222 msgid "Void Date" msgstr "تاريخ الإبطال" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:380 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:353 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:224 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:380 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:353 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:224 msgid "Canceled Date" msgstr "تاريخ الإلغاء" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:387 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3123 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:61 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:387 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3123 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:61 msgid "Bill" msgstr "الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:388 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:84 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:388 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:84 msgid "Bills" msgstr "الفواتير" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:1124 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:1124 #, python-format msgid "Do you want to mark Bill %s as Draft?" msgstr "هل تريد وضع الفاتورة %s كمسودة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:1232 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:1232 #, python-format msgid "Do you want to mark Bill %s as In Review?" msgstr "هل تريد وضع الفاتورة %s قيد المراجعة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:1342 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:1342 #, python-format msgid "Do you want to mark Bill %s as Approved?" msgstr "هل تريد وضع الفاتورة %s على أنها موافق عليها؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:1468 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:1468 #, python-format msgid "Do you want to mark Bill %s as Paid?" msgstr "هل تريد وضع الفاتورة %s على أنها مدفوعة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:1571 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:1571 #, python-format msgid "Do you want to void Bill %s?" msgstr "هل تريد إبطال الفاتورة %s؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:1644 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:1644 #, python-format msgid "Do you want to mark Bill %s as Canceled?" msgstr "هل تريد وضع الفاتورة %s كملغاة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:1653 +#: venv/lib/python3.12/site-packages/django_ledger/models/bill.py:1653 #, python-brace-format msgid "Bill {self.bill_number} cannot be deleted..." msgstr "لا يمكن حذف الفاتورة {self.bill_number}..." -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:69 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:69 msgid "Closing Date" msgstr "تاريخ الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:70 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:70 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:10 msgid "Is Posted" msgstr "تم النشر" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:82 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:82 msgid "Only one Closing Entry for Date Allowed." msgstr "مسموح بإدخال إغلاق واحد فقط لكل تاريخ." -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:193 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:193 #, python-brace-format msgid "Closing Entry {self.closing_date} is already posted." msgstr "إدخال الإغلاق {self.closing_date} تم نشره بالفعل." -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:212 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:212 #, python-brace-format msgid "Are you sure you want to post Closing Entry dated {self.closing_date}?" msgstr "هل أنت متأكد أنك تريد نشر إدخال الإغلاق المؤرخ في {self.closing_date}؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:230 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:230 #, python-brace-format msgid "Closing Entry {self.closing_date} is not posted." msgstr "إدخال الإغلاق {self.closing_date} لم يتم نشره." -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:252 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:252 #, python-brace-format msgid "" "Are you sure you want to unpost Closing Entry dated {self.closing_date}?" msgstr "" "هل أنت متأكد أنك تريد إلغاء نشر إدخال الإغلاق المؤرخ في {self.closing_date}؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:270 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:270 msgid "Cannot update transactions of a posted Closing Entry." msgstr "لا يمكن تحديث المعاملات لإدخال إغلاق تم نشره." -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:283 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:283 #, python-brace-format msgid "" "Are you sure you want to update all Closing Entry {self.closing_date} " @@ -4186,11 +4191,11 @@ msgstr "" "closing_date}؟ سيؤدي هذا الإجراء إلى حذف معاملات الإغلاق الحالية وإنشاء " "معاملات جديدة." -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:302 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:302 msgid "Cannot delete a posted Closing Entry" msgstr "لا يمكن حذف إدخال إغلاق تم نشره" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:314 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:314 #, python-brace-format msgid "" "Are you sure you want to delete Closing Entry {self.closing_date}? This " @@ -4199,149 +4204,149 @@ msgstr "" "هل أنت متأكد من أنك تريد حذف إدخال الإغلاق {self.closing_date}؟ لا يمكن " "التراجع عن هذا الإجراء." -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:373 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:373 msgid "Account Model" msgstr "نموذج الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:384 -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:325 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:33 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:384 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:325 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:33 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:10 msgid "Activity" msgstr "النشاط" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:387 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:387 msgid "Transaction Type" msgstr "نوع المعاملة" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:388 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:388 msgid "Closing Entry Balance" msgstr "رصيد إدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/models/closing_entry.py:398 +#: venv/lib/python3.12/site-packages/django_ledger/models/closing_entry.py:398 msgid "Closing Entry Model" msgstr "نموذج إدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:142 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:795 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3186 -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:217 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:142 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:795 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3186 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:217 msgid "Entity" msgstr "الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:144 -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:128 -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:541 -#: venv/lib/python3.11/site-packages/django_ledger/models/unit.py:131 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:144 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:128 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:541 +#: venv/lib/python3.12/site-packages/django_ledger/models/unit.py:131 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:12 msgid "Is Active" msgstr "نشط" -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:145 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:145 msgid "CoA Description" msgstr "وصف قائمة الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:151 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:151 msgid "Chart of Account" msgstr "قائمة الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:221 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:221 #, python-brace-format msgid "" "The account model {account_model} is not part of the chart of accounts {self." "name}." msgstr "نموذج الحساب {account_model} ليس جزءًا من قائمة الحسابات {self.name}." -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:319 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:319 #, python-brace-format msgid "CoA {self.uuid} already has a slug" msgstr "قائمة الحسابات {self.uuid} تحتوي بالفعل على معرف" -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:563 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:563 #, python-brace-format msgid "The Chart of Accounts {self.slug} is already default" msgstr "قائمة الحسابات {self.slug} هي بالفعل القائمة الافتراضية" -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:613 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:613 msgid "The Chart of Accounts is currently active." msgstr "قائمة الحسابات نشطة حاليًا." -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:640 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:640 msgid "The Chart of Accounts is currently not active." msgstr "قائمة الحسابات غير نشطة حاليًا." -#: venv/lib/python3.11/site-packages/django_ledger/models/coa.py:744 +#: venv/lib/python3.12/site-packages/django_ledger/models/coa.py:744 msgid "Default Chart of Accounts cannot be deactivated." msgstr "لا يمكن إلغاء تنشيط قائمة الحسابات الافتراضية." -#: venv/lib/python3.11/site-packages/django_ledger/models/customer.py:184 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/models/customer.py:184 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:8 msgid "Customer Number" msgstr "رقم العميل" -#: venv/lib/python3.11/site-packages/django_ledger/models/customer.py:188 +#: venv/lib/python3.12/site-packages/django_ledger/models/customer.py:188 msgid "Customer Entity" msgstr "كيان العميل" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:65 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:65 msgid "Associated Bank Account Model" msgstr "نموذج الحساب المصرفي المرتبط" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:69 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:69 msgid "Ledger Model" msgstr "نموذج دفتر الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:72 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:72 msgid "Import Job Completed" msgstr "اكتمل استيراد المهمة" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:77 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:77 msgid "Import Job Model" msgstr "نموذج مهمة الاستيراد" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:102 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:102 #, python-brace-format msgid "Are you sure you want to delete Import Job {self.description}?" msgstr "هل أنت متأكد أنك تريد حذف مهمة الاستيراد {self.description}؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:207 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:207 msgid "Parent Transaction" msgstr "المعاملة الأصلية" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:210 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:210 msgid "Date Posted" msgstr "تاريخ النشر" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:211 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:211 msgid "Bundle Split Transactions" msgstr "تجزئة المعاملات" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:216 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:216 msgid "Proposed Activity" msgstr "النشاط المقترح" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:235 -#: venv/lib/python3.11/site-packages/django_ledger/models/unit.py:140 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:235 +#: venv/lib/python3.12/site-packages/django_ledger/models/unit.py:140 msgid "Entity Unit Model" msgstr "نموذج وحدة الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:246 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:246 msgid "Staged Transaction Model" msgstr "نموذج المعاملة المتدرجة" -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:385 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:385 #, python-brace-format msgid "Staged Transaction {self.uuid} already split." msgstr "المعاملة المتدرجة {self.uuid} تم تقسيمها بالفعل." -#: venv/lib/python3.11/site-packages/django_ledger/models/data_import.py:510 +#: venv/lib/python3.12/site-packages/django_ledger/models/data_import.py:510 msgid "Invalid Bank Account for LedgerModel. No matching Entity Model found." msgstr "" "حساب مصرفي غير صالح لنموذج دفتر الحسابات. لم يتم العثور على نموذج كيان مطابق." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:435 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:435 #, python-brace-format msgid "" "The Closing Entry Model {closing_entry_model} does not belong to Entity " @@ -4349,55 +4354,55 @@ msgid "" msgstr "" "نموذج إدخال الإغلاق {closing_entry_model} لا ينتمي إلى الكيان {self.name}" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:439 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:439 #, python-brace-format msgid "The Closing Entry Model date {closing_entry_model.closing_date} " msgstr "تاريخ نموذج إدخال الإغلاق {closing_entry_model.closing_date} " -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:538 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:538 #, python-brace-format msgid "Cannot create closing entry with a future date {closing_date}." msgstr "لا يمكن إنشاء إدخال إغلاق بتاريخ مستقبلي {closing_date}." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:769 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:769 msgid "Default Chart of Accounts" msgstr "قائمة الحسابات الافتراضية" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:776 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:776 msgid "Admin" msgstr "الإدارة" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:780 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:780 msgid "Managers" msgstr "المديرون" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:783 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:783 msgid "Use Accrual Method" msgstr "استخدام طريقة الاستحقاق" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:784 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:784 msgid "Fiscal Year Start" msgstr "بداية السنة المالية" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:785 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:785 msgid "Last Closing Entry Date" msgstr "تاريخ آخر إدخال إغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:796 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:796 msgid "Entities" msgstr "الكيانات" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:865 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:875 -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:883 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:865 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:875 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:883 msgid "Invalid Parent Entity. " msgstr "الكيان الأصلي غير صالح." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:889 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:889 msgid "Only slug, UUID or EntityModel allowed." msgstr "مسموح فقط بالمعرف، UUID أو نموذج الكيان." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:962 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:962 #, python-brace-format msgid "" "Cannot replace existing slug {self.slug}. Use force_update=True if needed." @@ -4405,11 +4410,11 @@ msgstr "" "لا يمكن استبدال المعرف الحالي {self.slug}. استخدم force_update=True إذا لزم " "الأمر." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:1361 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:1361 msgid "No default_coa found." msgstr "لم يتم العثور على قائمة حسابات افتراضية." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:2022 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:2022 #, python-brace-format msgid "" "Invalid Account Type: choices are {BankAccountModel.VALID_ACCOUNT_TYPES}" @@ -4417,7 +4422,7 @@ msgstr "" "نوع الحساب غير صالح: الخيارات المتاحة هي {BankAccountModel." "VALID_ACCOUNT_TYPES}" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:2815 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:2815 msgid "" "Closing books must be called by providing closing_date or " "closing_entry_model, not both." @@ -4425,470 +4430,470 @@ msgstr "" "يجب استدعاء إغلاق الدفاتر إما بتحديد تاريخ الإغلاق أو نموذج إدخال الإغلاق، " "وليس كليهما." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:2819 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:2819 msgid "" "Closing books must be called by providing closing_date or " "closing_entry_model." msgstr "" "يجب استدعاء إغلاق الدفاتر إما بتحديد تاريخ الإغلاق أو نموذج إدخال الإغلاق." -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3121 -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:342 -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:481 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3121 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:342 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:481 msgid "Journal Entry" msgstr "إدخال دفتر اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3122 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3122 msgid "Purchase Order" msgstr "أمر شراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3124 -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:360 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3124 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:360 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:10 msgid "Invoice" msgstr "فاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3125 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3125 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:9 msgid "Estimate" msgstr "تقدير" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3138 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:37 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:38 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3138 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:37 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:38 msgid "Fiscal Year" msgstr "السنة المالية" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3178 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3178 msgid "Read Permissions" msgstr "أذونات القراءة" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3179 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3179 msgid "Read/Write Permissions" msgstr "أذونات القراءة/الكتابة" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3180 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3180 msgid "No Permissions" msgstr "بدون أذونات" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3190 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3190 msgid "Manager" msgstr "مدير" -#: venv/lib/python3.11/site-packages/django_ledger/models/entity.py:3195 +#: venv/lib/python3.12/site-packages/django_ledger/models/entity.py:3195 msgid "Permission Level" msgstr "مستوى الأذونات" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:226 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:226 msgid "Completed" msgstr "مكتمل" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:237 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:237 msgid "Fixed Price" msgstr "سعر ثابت" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:238 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:238 msgid "Target Price" msgstr "سعر الهدف" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:239 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:239 msgid "Time & Materials" msgstr "الوقت والمواد" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:240 -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:511 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:240 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:511 msgid "Other" msgstr "أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:247 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:247 msgid "Estimate Number" msgstr "رقم التقدير" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:253 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:253 msgid "Contract Terms" msgstr "شروط العقد" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:255 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:255 msgid "Customer Estimate Title" msgstr "عنوان تقدير العميل" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:258 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:258 msgid "EstimateModel Title length must be greater than 5" msgstr "يجب أن يزيد طول عنوان نموذج التقدير عن 5 أحرف" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:262 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:262 msgid "Estimate Model Status" msgstr "حالة نموذج التقدير" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:265 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:265 msgid "Date Draft" msgstr "تاريخ المسودة" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:266 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:266 msgid "Date In Review" msgstr "تاريخ قيد المراجعة" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:267 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:267 msgid "Date Approved" msgstr "تاريخ الموافقة" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:268 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:268 msgid "Date Completed" msgstr "تاريخ الاكتمال" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:269 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:269 msgid "Date Canceled" msgstr "تاريخ الإلغاء" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:270 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:270 msgid "Date Void" msgstr "تاريخ الإبطال" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:275 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:275 msgid "Total revenue estimate" msgstr "إجمالي تقدير الإيرادات" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:276 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:276 msgid "Estimated cost to complete the quoted work." msgstr "التكلفة المقدرة لإكمال العمل المذكور." -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:282 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:282 msgid "Labor Cost of labor estimate" msgstr "تكلفة تقدير العمالة" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:283 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:283 msgid "Estimated labor cost to complete the quoted work." msgstr "التكلفة المقدرة للعمالة لإكمال العمل المذكور." -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:289 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:289 msgid "Material Cost Estimate" msgstr "تقدير تكلفة المواد" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:290 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:290 msgid "Estimated material cost to complete the quoted work." msgstr "التكلفة المقدرة للمواد لإكمال العمل المذكور." -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:296 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:296 msgid "Equipment Cost Estimate" msgstr "تقدير تكلفة المعدات" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:297 -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:304 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:297 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:304 msgid "Estimated equipment cost to complete the quoted work." msgstr "التكلفة المقدرة للمعدات لإكمال العمل المذكور." -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:303 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:303 msgid "Other Cost Estimate" msgstr "تقدير تكلفة أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:312 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:312 msgid "Customer Job" msgstr "وظيفة العميل" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:313 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:313 msgid "Customer Jobs" msgstr "وظائف العملاء" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:672 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:672 #, python-format msgid "Do you want to mark Estimate %s as Draft?" msgstr "هل تريد وضع التقدير %s كمسودة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:763 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:763 #, python-format msgid "Do you want to mark Estimate %s as In Review?" msgstr "هل تريد وضع التقدير %s قيد المراجعة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:839 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:839 #, python-format msgid "Do you want to mark Estimate %s as Approved?" msgstr "هل تريد وضع التقدير %s على أنه معتمد؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:916 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:916 #, python-format msgid "Do you want to mark Estimate %s as Completed?" msgstr "هل تريد وضع التقدير %s على أنه مكتمل؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:991 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:991 #, python-format msgid "Do you want to mark Estimate %s as Canceled?" msgstr "هل تريد وضع التقدير %s على أنه ملغى؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:1069 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:1069 #, python-format msgid "Do you want to mark Estimate %s as Void?" msgstr "هل تريد إبطال التقدير %s؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/estimate.py:1323 +#: venv/lib/python3.12/site-packages/django_ledger/models/estimate.py:1323 msgid "Cannot compute gross margin, total cost is zero." msgstr "لا يمكن حساب هامش الربح الإجمالي، التكلفة الإجمالية صفر." -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:313 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:313 msgid "Invoice Number" msgstr "رقم الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:315 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:315 msgid "Invoice Status" msgstr "حالة الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:326 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:228 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:42 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:326 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:228 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:42 msgid "Prepaid Account" msgstr "حساب مسبق الدفع" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:330 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:236 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:330 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:236 msgid "Unearned Account" msgstr "حساب غير مكتسب" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:336 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:336 msgid "Invoice Additional Info" msgstr "معلومات إضافية عن الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:340 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:84 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:340 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:84 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:8 msgid "Invoice Items" msgstr "عناصر الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:361 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:99 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:361 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:99 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:15 msgid "Invoices" msgstr "الفواتير" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:1060 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:1060 #, python-format msgid "Do you want to mark Invoice %s as Draft?" msgstr "هل تريد وضع الفاتورة %s كمسودة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:1151 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:1151 #, python-format msgid "Do you want to mark Invoice %s as In Review?" msgstr "هل تريد وضع الفاتورة %s قيد المراجعة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:1256 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:1256 #, python-format msgid "Do you want to mark Invoice %s as Approved?" msgstr "هل تريد وضع الفاتورة %s على أنها معتمدة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:1365 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:1365 #, python-format msgid "Do you want to mark Invoice %s as Paid?" msgstr "هل تريد وضع الفاتورة %s على أنها مدفوعة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:1472 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:1472 #, python-format msgid "Do you want to mark Invoice %s as Void?" msgstr "هل تريد إبطال الفاتورة %s؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:1547 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:1547 #, python-format msgid "Do you want to mark Invoice %s as Canceled?" msgstr "هل تريد إلغاء الفاتورة %s؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/invoice.py:1556 +#: venv/lib/python3.12/site-packages/django_ledger/models/invoice.py:1556 #, python-brace-format msgid "Invoice {self.invoice_number} cannot be deleted..." msgstr "لا يمكن حذف الفاتورة {self.invoice_number}..." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:126 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:126 msgid "Unit of Measure Name" msgstr "اسم وحدة القياس" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:127 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:127 msgid "UoM Abbreviation" msgstr "اختصار وحدة القياس" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:134 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:134 msgid "UoM Entity" msgstr "كيان وحدة القياس" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:507 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:507 msgid "Labor" msgstr "العمالة" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:508 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:508 msgid "Material" msgstr "المواد" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:510 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:510 msgid "Lump Sum" msgstr "مبلغ إجمالي" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:520 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:520 msgid "Expense" msgstr "المصروف" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:522 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:522 msgid "Service" msgstr "الخدمة" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:523 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:523 msgid "Product" msgstr "المنتج" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:527 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:527 msgid "Item Name" msgstr "اسم العنصر" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:529 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:529 msgid "Internal ID" msgstr "المعرف الداخلي" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:530 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:530 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:9 msgid "Item Number" msgstr "رقم العنصر" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:535 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:535 msgid "Unit of Measure" msgstr "وحدة القياس" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:538 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:538 msgid "SKU Code" msgstr "رمز SKU" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:539 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:539 msgid "UPC Code" msgstr "رمز UPC" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:546 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:546 msgid "Default monetary value per unit of measure" msgstr "القيمة النقدية الافتراضية لكل وحدة قياس" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:549 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:549 msgid "Is an item for inventory" msgstr "هو عنصر للمخزون" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:550 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:550 msgid "It is an item you require for your inventory." msgstr "إنه عنصر تحتاجه لمخزونك." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:552 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:552 msgid "Is a product or service." msgstr "هل هو منتج أو خدمة." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:554 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:554 msgid "Is a product or service you sell or provide to customers." msgstr "هل هو منتج أو خدمة تبيعها أو تقدمها للعملاء." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:563 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:563 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:11 msgid "Inventory Account" msgstr "حساب المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:565 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:565 msgid "Inventory account where cost will be capitalized." msgstr "حساب المخزون حيث سيتم رسملة التكلفة." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:572 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:572 msgid "Total inventory received." msgstr "إجمالي المخزون المستلم." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:578 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:578 msgid "Total value of inventory received." msgstr "إجمالي قيمة المخزون المستلم." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:583 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:583 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:12 msgid "COGS Account" msgstr "حساب تكلفة البضائع المباعة (COGS)" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:585 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:585 msgid "COGS account where cost will be recognized on Income Statement." msgstr "حساب تكلفة البضائع المباعة حيث سيتم الاعتراف بالتكلفة في بيان الدخل." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:591 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:14 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:591 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:14 msgid "Earnings Account" msgstr "حساب الأرباح" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:593 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:593 msgid "Earnings account where revenue will be recognized on Income Statement." msgstr "حساب الأرباح حيث سيتم الاعتراف بالإيرادات في بيان الدخل." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:599 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:599 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:11 msgid "Expense Account" msgstr "حساب المصروف" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:601 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:601 msgid "Expense account where cost will be recognized on Income Statement." msgstr "حساب المصروف حيث سيتم الاعتراف بالتكلفة في بيان الدخل." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:607 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:607 msgid "Item Additional Info" msgstr "معلومات إضافية عن العنصر" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:613 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:613 msgid "Item Entity" msgstr "كيان العنصر" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:804 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:804 msgid "Items must have an associated expense accounts." msgstr "يجب أن تكون العناصر مرتبطة بحسابات المصروفات." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:806 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:806 msgid "Expenses must have a type." msgstr "يجب أن يكون للمصروفات نوع." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:819 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:819 msgid "Products must have Inventory, COGS & Earnings accounts." msgstr "" "يجب أن يكون للمنتجات حسابات المخزون، وحساب تكلفة البضائع المباعة، وحسابات " "الأرباح." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:821 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:821 msgid "Product must not be labor..." msgstr "يجب ألا يكون المنتج من العمالة..." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:831 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:831 msgid "Services must have COGS & Earnings accounts." msgstr "يجب أن تكون للخدمات حسابات تكلفة البضائع المباعة وحسابات الأرباح." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:842 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:842 msgid "Items for inventory must have Inventory & COGS accounts." msgstr "يجب أن تكون للعناصر المخزنية حسابات المخزون وتكلفة البضائع المباعة." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:844 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:844 msgid "Inventory items must have a type." msgstr "يجب أن تكون للعناصر المخزنية نوع." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1038 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1038 msgid "Not Ordered" msgstr "لم يتم طلبها" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1039 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1039 msgid "Ordered" msgstr "تم طلبها" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1040 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1040 msgid "In Transit" msgstr "في الطريق" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1041 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1041 msgid "Received" msgstr "تم الاستلام" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1050 -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:319 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1050 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:319 msgid "Associated Entity Unit" msgstr "وحدة الكيان المرتبطة" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1053 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1053 msgid "Item Model" msgstr "نموذج العنصر" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1058 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1058 msgid "Bill Model" msgstr "نموذج الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1063 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1063 msgid "Invoice Model" msgstr "نموذج الفاتورة" @@ -4896,151 +4901,151 @@ msgstr "نموذج الفاتورة" msgid "Cost Per Unit" msgstr "التكلفة لكل وحدة" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1079 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1079 msgid "Total Amount QTY x UnitCost" msgstr "المبلغ الإجمالي (الكمية × تكلفة الوحدة)" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1087 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1087 msgid "Purchase Order Model" msgstr "نموذج أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1090 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1090 msgid "PO Quantity" msgstr "كمية أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1091 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1091 msgid "Authorized item quantity for purchasing." msgstr "الكمية المصرح بها من العنصر للشراء." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1095 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1095 msgid "PO Unit Cost" msgstr "تكلفة وحدة أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1096 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1096 msgid "Purchase Order unit cost." msgstr "تكلفة وحدة أمر الشراء." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1103 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1103 msgid "Authorized maximum item cost per Purchase Order" msgstr "الحد الأقصى المصرح به لتكلفة العنصر لكل أمر شراء." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1104 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1104 msgid "Maximum authorized cost per Purchase Order." msgstr "الحد الأقصى المصرح به للتكلفة لكل أمر شراء." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1110 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1110 msgid "PO Item Status" msgstr "حالة عنصر أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1116 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1116 msgid "Customer Estimate" msgstr "تقدير العميل" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1120 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1120 msgid "Estimated/Contract Quantity" msgstr "الكمية المقدرة/المتعاقد عليها" -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1124 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1124 msgid "Estimate/Contract Cost per Unit." msgstr "تكلفة التقدير/العقد لكل وحدة." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1131 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1131 msgid "Total Estimate/Contract Cost." msgstr "إجمالي تكلفة التقدير/العقد." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1135 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1135 msgid "Estimate/Contract Revenue per Unit." msgstr "إيرادات التقدير/العقد لكل وحدة." -#: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1142 +#: venv/lib/python3.12/site-packages/django_ledger/models/items.py:1142 msgid "Total Estimate/Contract Revenue." msgstr "إجمالي إيرادات التقدير/العقد." -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:290 -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:291 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:290 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:291 msgid "Operating" msgstr "تشغيلية" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:293 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:293 msgid "Investing" msgstr "استثمارية" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:294 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:294 msgid "Purchase/Disposition of PPE" msgstr "شراء/التخلص من الممتلكات والمعدات" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:295 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:295 msgid "Purchase/Disposition of Securities" msgstr "شراء/التخلص من الأوراق المالية" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:296 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:296 msgid "Investing Activity Other" msgstr "نشاط استثماري آخر" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:298 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:298 msgid "Financing" msgstr "تمويل" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:299 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:299 msgid "Payoff of Short Term Debt" msgstr "سداد الدين قصير الأجل" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:300 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:300 msgid "Payoff of Long Term Debt" msgstr "سداد الدين طويل الأجل" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:301 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:301 msgid "Issuance of Common Stock, Preferred Stock or Capital Contribution" msgstr "إصدار أسهم عادية، أسهم مفضلة أو مساهمة رأسمالية" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:302 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:302 msgid "Dividends or Distributions to Shareholders" msgstr "الأرباح أو التوزيعات للمساهمين" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:303 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:303 msgid "Financing Activity Other" msgstr "نشاط تمويلي آخر" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:312 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:312 msgid "Journal Entry Number" msgstr "رقم إدخال دفتر اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:313 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:313 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:8 msgid "Timestamp" msgstr "الطابع الزمني" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:326 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:326 msgid "Origin" msgstr "الأصل" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:327 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:12 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:327 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:13 msgid "Posted" msgstr "تم النشر" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:333 -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:212 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:216 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:333 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:212 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:216 msgid "Ledger" msgstr "دفتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:343 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:21 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:31 -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:96 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:343 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:21 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:96 msgid "Journal Entries" msgstr "إدخالات دفتر اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:602 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:602 msgid "Cannot post an empty Journal Entry." msgstr "لا يمكن نشر إدخال دفتر يومية فارغ." -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:1215 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:1215 #, python-brace-format msgid "" "Are you sure you want to delete JournalEntry Model {self.je_number} on " @@ -5049,83 +5054,83 @@ msgstr "" "هل أنت متأكد أنك تريد حذف نموذج إدخال الدفتر {self.je_number} على دفتر " "الأستاذ {self.ledger.name}؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:1220 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:1220 #, python-brace-format msgid "JournalEntryModel {self.uuid} cannot be deleted..." msgstr "لا يمكن حذف نموذج إدخال الدفتر {self.uuid}..." -#: venv/lib/python3.11/site-packages/django_ledger/models/journal_entry.py:1357 +#: venv/lib/python3.12/site-packages/django_ledger/models/journal_entry.py:1357 #, python-brace-format msgid "Cannot add Journal Entries to locked LedgerModel {instance.ledger_id}" msgstr "" "لا يمكن إضافة إدخالات دفتر اليومية إلى دفتر الأستاذ المقفل {instance." "ledger_id}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:193 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:193 msgid "User Defined Ledger ID" msgstr "معرف دفتر الأستاذ المعرّف بواسطة المستخدم" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:194 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:194 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:9 msgid "Ledger Name" msgstr "اسم دفتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:198 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:198 msgid "Ledger Entity" msgstr "كيان دفتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:199 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:199 msgid "Posted Ledger" msgstr "دفتر الأستاذ المنشور" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:200 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:200 msgid "Locked Ledger" msgstr "دفتر الأستاذ المقفل" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:201 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:201 msgid "Hidden Ledger" msgstr "دفتر الأستاذ المخفي" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:213 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:213 msgid "Ledgers" msgstr "دفاتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:268 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:268 #, python-brace-format msgid "earliest_timestamp not present in LedgerModel {self.uuid}" msgstr "أول طابع زمني غير موجود في نموذج دفتر الأستاذ {self.uuid}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:455 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:455 #, python-brace-format msgid "Ledger {self.name} cannot be posted. UUID: {self.uuid}" msgstr "لا يمكن نشر دفتر الأستاذ {self.name}. UUID: {self.uuid}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:491 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:491 #, python-brace-format msgid "Ledger {self.uuid} cannot be unposted." msgstr "لا يمكن إلغاء نشر دفتر الأستاذ {self.uuid}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:520 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:520 #, python-brace-format msgid "Ledger {self.name} cannot be locked. UUID: {self.uuid}" msgstr "لا يمكن قفل دفتر الأستاذ {self.name}. UUID: {self.uuid}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:554 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:554 #, python-brace-format msgid "Ledger {self.name} cannot be un-locked. UUID: {self.uuid}" msgstr "لا يمكن إلغاء قفل دفتر الأستاذ {self.name}. UUID: {self.uuid}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:573 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:573 #, python-brace-format msgid "Ledger {self.name} cannot be hidden. UUID: {self.uuid}" msgstr "لا يمكن إخفاء دفتر الأستاذ {self.name}. UUID: {self.uuid}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:591 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:591 #, python-brace-format msgid "Ledger {self.name} cannot be un-hidden. UUID: {self.uuid}" msgstr "لا يمكن إلغاء إخفاء دفتر الأستاذ {self.name}. UUID: {self.uuid}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:608 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:608 msgid "" "LedgerModel {self.name} cannot be deleted because posted is {self." "is_posted()} " @@ -5133,14 +5138,14 @@ msgstr "" "لا يمكن حذف نموذج دفتر الأستاذ {self.name} لأن الحالة المنشورة هي {self." "is_posted()}" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:620 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:620 #, python-brace-format msgid "" "Journal Entries with date {earliest_date} cannot be deleted because of " "latest closing " msgstr "لا يمكن حذف إدخالات الدفتر بتاريخ {earliest_date} بسبب الإغلاق الأخير" -#: venv/lib/python3.11/site-packages/django_ledger/models/ledger.py:721 +#: venv/lib/python3.12/site-packages/django_ledger/models/ledger.py:721 msgid "" "Are you sure you want to delete Ledger {self.name} from Entity {self." "get_entity_name()}?" @@ -5148,186 +5153,186 @@ msgstr "" "هل أنت متأكد أنك تريد حذف دفتر الأستاذ {self.name} من الكيان {self." "get_entity_name()}؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:48 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:48 msgid "Slug field must contain at least 10 characters." msgstr "يجب أن يحتوي حقل المعرف الفريد على 10 أحرف على الأقل." -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:105 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:105 msgid "Address Line 1" msgstr "عنوان الخط 1" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:106 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:106 msgid "Address Line 2" msgstr "عنوان الخط 2" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:108 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:108 msgid "State/Province" msgstr "الولاية/المقاطعة" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:112 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:112 msgid "Website" msgstr "الموقع الإلكتروني" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:177 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:67 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:84 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:105 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:13 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:58 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:75 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:96 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:177 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:67 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:84 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:105 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:58 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:75 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:96 msgid "Amount Due" msgstr "المبلغ المستحق" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:182 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:120 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:133 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:111 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:121 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:182 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:120 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:133 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:111 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:121 msgid "Amount Paid" msgstr "المبلغ المدفوع" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:188 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:188 msgid "Amount Receivable" msgstr "المبلغ المستحق الاستلام" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:193 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:193 msgid "Amount Unearned" msgstr "المبلغ غير المكتسب" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:198 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:198 msgid "Amount Earned" msgstr "المبلغ المكتسب" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:201 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:201 msgid "Accrue" msgstr "يتراكم" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:205 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:205 msgid "Progress Amount" msgstr "مبلغ التقدم" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:974 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:974 msgid "Terms" msgstr "الشروط" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:975 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:72 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:89 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:110 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:63 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:80 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:101 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:975 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:72 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:89 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:110 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:63 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:80 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:101 msgid "Due Date" msgstr "تاريخ الاستحقاق" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1083 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1083 msgid "Markdown Notes" msgstr "ملاحظات ماركداون" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1126 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1126 msgid "Checking" msgstr "حساب جاري" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1127 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1127 msgid "Savings" msgstr "حساب توفير" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1133 -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1137 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1133 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1137 msgid "Only digits allowed" msgstr "الأرقام فقط مسموح بها" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1140 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1140 msgid "SWIFT Number" msgstr "رقم SWIFT" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1154 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1154 msgid "Tax Registration Number" msgstr "رقم التسجيل الضريبي" -#: venv/lib/python3.11/site-packages/django_ledger/models/mixins.py:1174 +#: venv/lib/python3.12/site-packages/django_ledger/models/mixins.py:1174 msgid "Sales Tax Rate" msgstr "معدل ضريبة المبيعات" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:195 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:53 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:195 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:53 msgid "Fulfilled" msgstr "تم التنفيذ" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:201 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:201 msgid "Purchase Order Number" msgstr "رقم أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:203 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:203 msgid "Purchase Order Title" msgstr "عنوان أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:207 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:207 msgid "PO Title must be greater than 5" msgstr "يجب أن يكون عنوان أمر الشراء أكثر من 5 أحرف" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:210 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:33 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:39 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:51 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:210 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:33 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:39 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:51 msgid "Purchase Order Amount" msgstr "مبلغ أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:214 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:41 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:214 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:41 msgid "Received Amount" msgstr "المبلغ المستلم" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:223 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:223 msgid "Fulfillment Date" msgstr "تاريخ التنفيذ" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:229 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:229 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:8 msgid "Purchase Order Items" msgstr "عناصر أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:742 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:742 #, python-format msgid "Do you want to mark Purchase Order %s as Draft?" msgstr "هل تريد وضع أمر الشراء %s كمسودة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:815 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:815 #, python-format msgid "Do you want to mark Purchase Order %s as In Review?" msgstr "هل تريد وضع أمر الشراء %s قيد المراجعة؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:882 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:882 #, python-format msgid "Do you want to mark Purchase Order %s as Approved?" msgstr "هل تريد وضع أمر الشراء %s على أنه معتمد؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:948 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:948 #, python-format msgid "Do you want to mark Purchase Order %s as Canceled?" msgstr "هل تريد إلغاء أمر الشراء %s؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:1045 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:1045 #, python-format msgid "Do you want to mark Purchase Order %s as Fulfilled?" msgstr "هل تريد وضع أمر الشراء %s على أنه تم التنفيذ؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/purchase_order.py:1123 +#: venv/lib/python3.12/site-packages/django_ledger/models/purchase_order.py:1123 #, python-format msgid "Do you want to mark Purchase Order %s as Void?" msgstr "هل تريد إبطال أمر الشراء %s؟" -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:478 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:478 msgid "Tx Type" msgstr "نوع المعاملة" -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:482 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:482 msgid "Journal Entry to be associated with this transaction." msgstr "إدخال دفتر اليومية المرتبط بهذه المعاملة." -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:486 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:486 msgid "Account from Chart of Accounts to be associated with this transaction." msgstr "الحساب من مخطط الحسابات المرتبط بهذه المعاملة." @@ -5335,1209 +5340,1144 @@ msgstr "الحساب من مخطط الحسابات المرتبط بهذه ال msgid "Account of the transaction." msgstr "حساب المعاملة." -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:497 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:497 msgid "Tx Description" msgstr "وصف المعاملة" -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:498 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:498 msgid "A description to be included with this individual transaction" msgstr "وصف يتم تضمينه مع هذه المعاملة الفردية" -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:505 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:505 msgid "Transaction" msgstr "المعاملة" -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:506 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:91 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:506 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:91 msgid "Transactions" msgstr "المعاملات" -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:525 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:525 msgid "Cannot transact on root accounts" msgstr "لا يمكن إجراء المعاملات على الحسابات الجذرية" -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:563 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:563 #, python-brace-format msgid "" "Cannot create or modify transactions on account model {instance.account}." msgstr "لا يمكن إنشاء أو تعديل المعاملات على نموذج الحساب {instance.account}." -#: venv/lib/python3.11/site-packages/django_ledger/models/transactions.py:568 +#: venv/lib/python3.12/site-packages/django_ledger/models/transactions.py:568 msgid "Cannot modify transactions on locked journal entries." msgstr "لا يمكن تعديل المعاملات على إدخالات دفتر اليومية المقفلة." -#: venv/lib/python3.11/site-packages/django_ledger/models/unit.py:129 +#: venv/lib/python3.12/site-packages/django_ledger/models/unit.py:129 msgid "Unit Entity" msgstr "كيان الوحدة" -#: venv/lib/python3.11/site-packages/django_ledger/models/unit.py:132 +#: venv/lib/python3.12/site-packages/django_ledger/models/unit.py:132 msgid "Is Hidden" msgstr "مخفي" -#: venv/lib/python3.11/site-packages/django_ledger/models/vendor.py:181 +#: venv/lib/python3.12/site-packages/django_ledger/models/vendor.py:181 msgid "Vendor Entity" msgstr "كيان المورد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/account_create.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/account_list.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/views/account.py:90 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/account_create.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/account_list.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/views/account.py:90 msgid "Create Account" msgstr "إنشاء حساب" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/account_detail.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/account_detail.html:14 msgid "Account Transaction List Report" msgstr "تقرير قائمة معاملات الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/account_list.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/account_list.html:10 msgid "Accounts List" msgstr "قائمة الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/account_list.html:21 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/account_list.html:21 msgid "Back to CoA List" msgstr "العودة إلى قائمة مخطط الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:24 msgid "CoA" msgstr "مخطط الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:25 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:25 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:13 msgid "Balance Type" msgstr "نوع الرصيد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:28 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:28 msgid "CoA Role Default" msgstr "الدور الافتراضي لمخطط الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:99 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:64 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:99 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:64 msgid "Detail" msgstr "التفاصيل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:104 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:52 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:104 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:52 msgid "Activate" msgstr "تفعيل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:108 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:108 msgid "Deactivate" msgstr "إلغاء التفعيل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:112 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:43 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:64 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:70 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:76 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:82 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:76 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:104 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:112 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:43 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:64 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:70 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:76 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:82 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:76 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:104 msgid "Lock" msgstr "قفل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:116 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:29 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:80 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:116 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:29 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:80 msgid "Unlock" msgstr "إلغاء القفل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/auth/login.html:28 -#: venv/lib/python3.11/site-packages/django_ledger/views/auth.py:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/auth/login.html:28 +#: venv/lib/python3.12/site-packages/django_ledger/views/auth.py:20 msgid "Login" msgstr "تسجيل الدخول" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_create.html:12 -#: venv/lib/python3.11/site-packages/django_ledger/views/bank_account.py:44 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_create.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/views/bank_account.py:44 msgid "Create Bank Account" msgstr "إنشاء حساب بنكي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_create.html:22 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:33 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_create.html:22 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/expense_create.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/inventory_item_create.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:38 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/product_create.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_create.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/service_create.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_create.html:22 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/uom_create.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_create.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:33 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_create.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/expense_create.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/inventory_item_create.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:38 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/product_create.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_create.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/service_create.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_create.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/uom_create.html:24 msgid "Create" msgstr "إنشاء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_list.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_list.html:14 msgid "New Bank Account" msgstr "حساب بنكي جديد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:14 msgid "Routing" msgstr "التوجيه" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:15 msgid "ABA" msgstr "ABA" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:55 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:55 msgid "Inactivate" msgstr "إلغاء التنشيط" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/views/bill.py:52 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/views/bill.py:52 msgid "Create Bill" msgstr "إنشاء فاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:20 msgid "Bill for" msgstr "فاتورة لـ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_delete.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_void.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_delete.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/customer_create.html:25 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/customer_update.html:25 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/import_job_delete.html:17 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entity_delete.html:22 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:47 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:50 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:51 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:54 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_delete.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_delete.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_delete.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/product_delete.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_delete.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/service_delete.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/uom_delete.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/vendor_update.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_delete.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_void.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_delete.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/customer_create.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/customer_update.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/import_job_delete.html:17 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/entity_delete.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:47 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:50 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:51 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:54 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_delete.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_delete.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_delete.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/product_delete.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_delete.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/service_delete.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/uom_delete.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/vendor_update.html:24 msgid "Go Back" msgstr "العودة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/views/bill.py:214 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/views/bill.py:214 msgid "Bill List" msgstr "قائمة الفواتير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:63 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:63 msgid "Accrued" msgstr "متراكم" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:71 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:71 msgid "You Still Owe" msgstr "ما زلت مديناً" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:94 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:8 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:94 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:50 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:8 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:94 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:94 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:50 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:10 msgid "Item" msgstr "العنصر" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:96 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:22 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:20 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:95 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:20 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:96 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:95 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:9 msgid "Unit Cost" msgstr "تكلفة الوحدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:99 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:99 msgid "PO" msgstr "أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:115 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:45 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:115 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:45 msgid "View PO" msgstr "عرض أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:144 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:66 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:30 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:131 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:65 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:48 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:25 -#: venv/lib/python3.11/site-packages/django_ledger/views/financial_statement.py:59 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:144 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:66 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:30 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:131 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:65 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:48 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/views/financial_statement.py:59 msgid "Balance Sheet" msgstr "الميزانية العمومية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:146 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:71 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:31 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:133 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:70 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:51 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:146 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:71 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:133 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:70 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:51 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:27 msgid "Income Statement" msgstr "بيان الدخل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:148 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:31 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:135 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:54 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:29 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:148 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:135 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:54 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:29 msgid "Cash Flow Statement" msgstr "بيان التدفقات النقدية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:155 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:141 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:155 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:141 msgid "Balance Sheet PDF" msgstr "الميزانية العمومية PDF" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:158 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:144 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:158 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:144 msgid "Income Statement PDF" msgstr "بيان الدخل PDF" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:161 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:147 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:161 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:147 msgid "Cash Flow Statement PDF" msgstr "بيان التدفقات النقدية PDF" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:171 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:171 msgid "Bill Transactions" msgstr "معاملات الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:18 msgid "Latest Bills" msgstr "أحدث الفواتير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:95 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:73 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:95 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:94 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:98 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:96 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:95 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:73 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:95 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:94 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:98 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:96 msgid "Go to month:" msgstr "الذهاب إلى الشهر:" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:98 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:110 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:76 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:88 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:98 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:110 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:94 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:106 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:97 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:109 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:101 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:113 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:99 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:111 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:98 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:110 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:76 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:88 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:98 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:110 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:94 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:106 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:97 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:109 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:101 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:113 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:99 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:111 msgid "All" msgstr "الكل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:107 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:85 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:107 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:106 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:110 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:108 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_list.html:107 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:85 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:107 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:106 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:110 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:108 msgid "Go to year:" msgstr "الذهاب إلى السنة:" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:19 msgid "Save Bill" msgstr "حفظ الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:22 msgid "Back to Bill Detail" msgstr "العودة إلى تفاصيل الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:26 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:26 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:20 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:29 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:26 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:26 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:29 msgid "Go To Dashboard" msgstr "الذهاب إلى لوحة القيادة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:38 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:44 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:38 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:44 msgid "Bill State" msgstr "حالة الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:53 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:52 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:53 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:52 msgid "Ledger State" msgstr "حالة دفتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:76 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:76 msgid "Bill Ledger" msgstr "دفتر الأستاذ للفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:80 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:79 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:80 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:79 msgid "Ledger Journal Entries" msgstr "إدخالات دفتر اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:83 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:82 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:83 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:82 msgid "Lock Ledger" msgstr "قفل دفتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:85 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:84 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:85 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:84 msgid "Unlock Ledger" msgstr "إلغاء قفل دفتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:87 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:86 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:87 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:86 msgid "Force Migrate" msgstr "الهجرة القسرية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:98 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/bill_update.html:98 msgid "Bill Configuration" msgstr "تكوين الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:16 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:14 msgid "Due in" msgstr "مستحق في" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:44 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entitiy_list.html:20 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:38 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:85 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:22 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_list.html:32 -msgid "View" -msgstr "عرض" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:49 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:187 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:43 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:170 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:49 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:187 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:43 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:170 msgid "Mark as Paid" msgstr "وضع علامة مدفوعة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:53 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:53 msgid "Mark as Canceled" msgstr "وضع علامة ملغاة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:66 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:83 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:104 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:132 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:66 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:83 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:104 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:132 msgid "This bill is" msgstr "هذه الفاتورة هي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:75 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:92 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:113 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:66 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:83 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:104 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:75 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:92 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:113 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:66 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:83 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:104 msgid "Is Accrued" msgstr "مستحقة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:100 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:129 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:141 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:91 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:100 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:129 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:141 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:91 msgid "External Ref" msgstr "المرجع الخارجي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:122 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:113 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:122 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:113 msgid "Progressed" msgstr "متقدم" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:160 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:62 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:143 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:67 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:160 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:62 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:143 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:67 msgid "Mark as Draft" msgstr "وضع كمسودة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:169 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:71 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:152 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:76 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:169 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:71 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:152 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:76 msgid "Mark as Review" msgstr "وضع قيد المراجعة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:178 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:85 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:178 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:85 msgid "Mark as Approved" msgstr "وضع علامة معتمد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:217 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:217 msgid "New Bill" msgstr "فاتورة جديدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:10 msgid "PO Qty" msgstr "كمية أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:20 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:31 msgid "PO Amount" msgstr "مبلغ أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:32 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:33 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:28 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:14 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:21 -msgid "Unit" -msgstr "الوحدة" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:79 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:74 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:69 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:101 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:79 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:74 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:69 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:101 msgid "New Item" msgstr "عنصر جديد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:9 msgid "Number" msgstr "الرقم" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:13 msgid "Status Date" msgstr "تاريخ الحالة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:14 msgid "Payments" msgstr "المدفوعات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:15 msgid "Past Due" msgstr "مستحق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:12 msgid "DEFAULT" msgstr "الافتراضي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:16 msgid "Entity Default" msgstr "الكيان الافتراضي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:31 msgid "Total Accounts" msgstr "إجمالي الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:32 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:32 msgid "Active Accounts" msgstr "الحسابات النشطة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:35 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:35 msgid "Locked Accounts" msgstr "الحسابات المقفلة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:41 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:41 msgid "ago" msgstr "منذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:52 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:52 msgid "Add Account" msgstr "إضافة حساب" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:58 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:58 msgid "Mark as Default" msgstr "وضع كافتراضي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:65 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:65 msgid "Mark as Inactive" msgstr "وضع كغير نشط" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:70 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:70 msgid "Mark as Active" msgstr "وضع كنشط" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_create.html:9 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_create.html:20 -#: venv/lib/python3.11/site-packages/django_ledger/views/closing_entry.py:76 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_create.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_create.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/views/closing_entry.py:76 msgid "Create Closing Entry" msgstr "إنشاء إدخال إغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_create.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_create.html:24 msgid "Back To Closing Entries" msgstr "العودة إلى إدخالات الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_detail.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_detail.html:15 msgid "Back to Closing Entry List" msgstr "العودة إلى قائمة إدخالات الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_detail.html:29 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_update.html:29 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_detail.html:29 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_update.html:29 msgid "Closing Entry Transactions" msgstr "معاملات إدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:16 msgid "Closing Entries" msgstr "إدخالات الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/closing_entry_list.html:18 msgid "Latest Closing Entries" msgstr "أحدث إدخالات الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:10 msgid "Closing Entry" msgstr "إدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:14 msgid "Created:" msgstr "تم الإنشاء:" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:15 msgid "Transaction Count:" msgstr "عدد المعاملات:" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:18 msgid "Go To" msgstr "اذهب إلى" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:28 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:51 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:67 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:112 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:28 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:51 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:67 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:112 msgid "Post" msgstr "نشر" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:37 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:37 msgid "Update Transactions" msgstr "تحديث المعاملات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:46 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:55 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:71 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:116 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:46 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:55 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:71 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:116 msgid "UnPost" msgstr "إلغاء النشر" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:53 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/includes/card_closing_entry.html:53 msgid "Update Notes" msgstr "تحديث الملاحظات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:9 msgid "Closing Entry Date" msgstr "تاريخ إدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:15 msgid "Txs Count" msgstr "عدد المعاملات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:11 msgid "TX Type" msgstr "نوع المعاملة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:12 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:14 msgid "Balance" msgstr "الرصيد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/date_picker.html:5 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/date_picker.html:5 msgid "Select Date" msgstr "اختر التاريخ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:7 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:7 msgid "Feedback" msgstr "ملاحظات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:24 msgid "Report a Bug" msgstr "الإبلاغ عن خطأ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:12 msgid "Request a Feature" msgstr "طلب ميزة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:56 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/feedback_button.html:56 msgid "Request a New Feature" msgstr "طلب ميزة جديدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/modals.html:21 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/modals.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/modals.html:21 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/modals.html:24 msgid "Mark As Paid" msgstr "وضع كمدفوع" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/modals_v2.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/modals_v2.html:11 msgid "Confirm" msgstr "تأكيد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/period_navigator.html:26 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/period_navigator.html:26 msgid "Month" msgstr "الشهر" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/period_navigator.html:37 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:17 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/period_navigator.html:37 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:17 msgid "thru" msgstr "عبر" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/components/period_navigator.html:41 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/components/period_navigator.html:41 msgid "Go To Current Month" msgstr "الذهاب إلى الشهر الحالي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/customer_create.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/customer_create.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/customer_create.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/customer_create.html:23 msgid "Create Customer" msgstr "إنشاء عميل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/customer_list.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/customer_list.html:15 msgid "New Customer" msgstr "عميل جديد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/customer_update.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/customer_update.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/customer_update.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/customer_update.html:23 msgid "Update Customer" msgstr "تحديث العميل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/includes/card_customer.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/includes/card_customer.html:9 msgid "Customer Information" msgstr "معلومات العميل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:12 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:13 msgid "Hidden" msgstr "مخفي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/data_import_job_list.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/data_import_job_list.html:10 msgid "Import OFX File" msgstr "استيراد ملف OFX" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/data_import_job_txs.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/data_import_job_txs.html:10 msgid "Pending Transactions" msgstr "المعاملات المعلقة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/data_import_job_txs.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/data_import_job_txs.html:14 msgid "Imported Transactions" msgstr "المعاملات المستوردة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/import_job_create.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/import_job_create.html:31 msgid "No file uploaded" msgstr "لم يتم رفع أي ملف" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/import_job_create.html:40 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/import_job_create.html:40 msgid "Upload" msgstr "رفع" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/import_job_update.html:18 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_table.html:83 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/import_job_update.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_table.html:83 msgid "Import Job List" msgstr "قائمة مهام الاستيراد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_list_table.html:44 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:30 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_list_table.html:44 msgid "Manage" msgstr "إدارة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_imported.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_imported.html:25 msgid "View JE" msgstr "عرض إدخال الدفتر" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_table.html:54 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_table.html:54 msgid "Transaction Activity" msgstr "نشاط المعاملة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entitiy_list.html:13 -#: venv/lib/python3.11/site-packages/django_ledger/views/entity.py:47 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/entitiy_list.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/views/entity.py:47 msgid "My Entities" msgstr "كياناتي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entitiy_list.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/home.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/entitiy_list.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/home.html:20 msgid "New Entity" msgstr "كيان جديد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entity_create.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/entity_create.html:19 msgid "New Entity Information" msgstr "معلومات الكيان الجديد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/entity_dashboard.html:83 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/entity_dashboard.html:83 msgid "Payables" msgstr "الحسابات الدائنة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:16 msgid "Accrual Method" msgstr "طريقة الاستحقاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:20 msgid "Cash Method" msgstr "طريقة النقد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:26 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:26 msgid "Last Closing Date" msgstr "تاريخ الإغلاق الأخير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/entity/includes/card_entity.html:29 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:23 -#: venv/lib/python3.11/site-packages/django_ledger/views/entity.py:210 -msgid "Dashboard" -msgstr "لوحة القيادة" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:17 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:17 msgid "Revenue Estimate" msgstr "تقدير الإيرادات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:24 msgid "Cost Estimate" msgstr "تقدير التكلفة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:31 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:31 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:16 msgid "Profit Estimate" msgstr "تقدير الربح" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:38 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:38 msgid "Gross Margin Estimate" msgstr "تقدير الهامش الإجمالي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:50 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:50 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:8 msgid "Estimate Items" msgstr "عناصر التقدير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:69 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:69 msgid "Purchase Orders" msgstr "أوامر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:75 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:75 msgid "Initiate PO" msgstr "بدء أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:90 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:90 msgid "Initiate Bill" msgstr "بدء الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:105 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:105 msgid "Initiate Invoice" msgstr "بدء الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_list.html:18 msgid "Latest Estimates" msgstr "أحدث التقديرات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/estimate_update.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/estimate_update.html:19 msgid "Save Estimate" msgstr "حفظ التقدير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:14 msgid "Estimated Revenue" msgstr "الإيرادات المقدرة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:19 msgid "Cost Breakdown" msgstr "تفصيل التكلفة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:21 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:21 msgid "Labor Cost" msgstr "تكلفة العمالة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:24 msgid "Materials Cost" msgstr "تكلفة المواد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:27 msgid "Equipment Cost" msgstr "تكلفة المعدات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:30 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:30 msgid "Other Cost" msgstr "تكلفة أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:32 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:32 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:23 msgid "Total Cost" msgstr "إجمالي التكلفة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:35 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:35 msgid "Estimated Gross Margin" msgstr "الهامش الإجمالي المقدر" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:40 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:40 msgid "Cost Progress" msgstr "تقدم التكلفة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:44 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:44 msgid "Invoice Progress" msgstr "تقدم الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:48 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:48 msgid "Received Progress" msgstr "تقدم الاستلام" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:80 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:161 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:80 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:161 msgid "Approve" msgstr "الموافقة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:12 msgid "Unit Sale Price" msgstr "سعر البيع للوحدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:13 msgid "Total Cost Estimate" msgstr "التكلفة الإجمالية المقدرة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:14 msgid "Total Revenue Estimate" msgstr "الإيرادات الإجمالية المقدرة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:11 msgid "Title" msgstr "العنوان" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:14 msgid "Sales Price" msgstr "سعر البيع" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:15 #, python-format msgid "GM%%" msgstr "الهامش الإجمالي %%" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:21 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:21 msgid "Unit Sales Price" msgstr "سعر البيع للوحدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:22 msgid "Business Unit" msgstr "وحدة الأعمال" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/estimate/tags/ce_item_formset.html:24 msgid "Total Revenue" msgstr "إجمالي الإيرادات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/expense_list.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/expense_list.html:12 msgid "The Things I Pay For" msgstr "الأشياء التي أدفع مقابلها" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:8 msgid "Expense Number" msgstr "رقم المصروف" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:8 msgid "UOM" msgstr "وحدة القياس" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:53 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:57 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:56 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:53 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:57 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:56 msgid "By Unit" msgstr "حسب الوحدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:56 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:60 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:59 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:56 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:60 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/income_statement.html:59 msgid "Download PDF" msgstr "تنزيل PDF" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:26 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:26 msgid "Balance Through" msgstr "الرصيد حتى" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:76 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:76 msgid "Total:" msgstr "المجموع:" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:107 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:107 msgid "Retained Earnings" msgstr "الأرباح المحتجزة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:118 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:118 msgid "Total EQUITY" msgstr "إجمالي حقوق الملكية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:128 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:128 msgid "Total Equity + Liabilities" msgstr "إجمالي حقوق الملكية + الالتزامات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:10 msgid "Cash from Operating Activities" msgstr "النقد من الأنشطة التشغيلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:27 msgid "Noncash Charges to Non-current Accounts" msgstr "تكاليف غير نقدية لحسابات غير جارية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:48 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:48 msgid "Noncash Charges to Current Accounts" msgstr "تكاليف غير نقدية لحسابات جارية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:91 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:91 msgid "Net Cash Provided by Operating Activities" msgstr "صافي النقد المقدم من الأنشطة التشغيلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:102 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:102 msgid "Cash from Financing Activities" msgstr "النقد من الأنشطة التمويلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:141 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:141 msgid "Net Cash Provided by Financing Activities" msgstr "صافي النقد المقدم من الأنشطة التمويلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:152 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:152 msgid "Cash from Investing Activities" msgstr "النقد من الأنشطة الاستثمارية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:178 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:178 msgid "Net Cash Provided by Investing Activities" msgstr "صافي النقد المقدم من الأنشطة الاستثمارية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:191 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:191 msgid "Net Cashflow" msgstr "صافي التدفق النقدي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:199 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/cash_flow_statement.html:199 msgid "Net Cash From" msgstr "صافي النقد من" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:19 msgid "Operating Revenues" msgstr "الإيرادات التشغيلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:50 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:50 msgid "Net Operating Revenues" msgstr "صافي الإيرادات التشغيلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:57 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:57 msgid "Less: Cost of Goods Sold" msgstr "ناقص: تكلفة البضائع المباعة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:88 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:88 msgid "Net COGS" msgstr "صافي تكلفة البضائع المباعة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:100 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:100 msgid "Gross Profit" msgstr "الربح الإجمالي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:107 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:107 msgid "Operating Expenses" msgstr "المصروفات التشغيلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:138 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:138 msgid "Net Operating Expenses" msgstr "صافي المصروفات التشغيلية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:151 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:151 msgid "Net Operating Income (Loss)" msgstr "صافي الدخل التشغيلي (الخسارة)" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:158 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:158 msgid "Other Revenues" msgstr "إيرادات أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:189 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:189 msgid "Net Other Revenues" msgstr "صافي الإيرادات الأخرى" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:197 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:197 msgid "Other Expenses" msgstr "نفقات أخرى" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:228 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:228 msgid "Net Other Expenses" msgstr "صافي النفقات الأخرى" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:240 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:240 msgid "Net Other Income (Loss)" msgstr "صافي الدخل الآخر (الخسارة)" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:253 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:253 msgid "through" msgstr "خلال" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:255 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:255 msgid "Net Income" msgstr "صافي الدخل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/card_markdown.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/card_markdown.html:20 msgid "No available notes to display..." msgstr "لا توجد ملاحظات متاحة للعرض..." -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/nav.html:34 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/nav.html:34 msgid "Logout" msgstr "تسجيل الخروج" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:5 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:5 msgid "Assets" msgstr "الأصول" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:8 msgid "Liabilities" msgstr "الالتزامات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:11 msgid "Equity" msgstr "حقوق الملكية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_bs.html:14 msgid "Cash" msgstr "نقداً" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:5 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:5 msgid "Revenue" msgstr "الإيرادات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:8 msgid "Expenses" msgstr "المصروفات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:11 msgid "Earnings (Loss)" msgstr "الأرباح (الخسارة)" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:14 msgid "Accounting Period" msgstr "الفترة المحاسبية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:5 -msgid "Financial Analysis" -msgstr "التحليل المالي" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:7 -msgid "Solvency" -msgstr "الملاءة المالية" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:15 -msgid "Quick Ratio" -msgstr "النسبة السريعة" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:22 -msgid "Leverage" -msgstr "الرافعة المالية" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:23 -msgid "Debt to Equity" -msgstr "نسبة الدين إلى حقوق الملكية" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:32 -msgid "Return on Equity" -msgstr "العائد على حقوق الملكية" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:39 -msgid "Return on Assets" -msgstr "العائد على الأصول" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:45 -msgid "Net Profit Margin" -msgstr "هامش صافي الربح" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/includes/widget_ratios.html:51 -msgid "Gross Profit Margin" -msgstr "هامش الربح الإجمالي" - -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/inventory_item_list.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/inventory_item_list.html:12 msgid "My Inventory Items" msgstr "عناصر المخزون الخاصة بي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/inventory_recount.html:60 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/inventory_recount.html:60 msgid "Recount Inventory" msgstr "إعادة تعداد المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/inventory_recount.html:62 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/inventory_recount.html:62 msgid "Update Inventory" msgstr "تحديث المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:8 msgid "Inventory Number" msgstr "رقم المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/inventory/tags/inventory_item_table.html:13 msgid "Action" msgstr "الإجراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:53 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:53 msgid "Invoice Info" msgstr "معلومات الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:57 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:74 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:95 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:120 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:57 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:74 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:95 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:120 msgid "This invoice is" msgstr "هذه الفاتورة هي" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:200 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:200 msgid "New Invoice" msgstr "فاتورة جديدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:11 msgid "Invoice for Estimate" msgstr "فاتورة لتقدير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:16 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_create.html:17 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_create.html:17 msgid "Back to Estimate" msgstr "العودة إلى التقدير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/views/invoice.py:68 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/views/invoice.py:68 msgid "Create Invoice" msgstr "إنشاء فاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:24 -#: venv/lib/python3.11/site-packages/django_ledger/views/invoice.py:45 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/views/invoice.py:45 msgid "Invoice List" msgstr "قائمة الفواتير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:41 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:41 msgid "Accounts Receivable" msgstr "الحسابات المدينة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:157 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:157 msgid "Invoice Transactions" msgstr "معاملات الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:17 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:17 msgid "Latest Invoices" msgstr "أحدث الفواتير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:19 msgid "Save Invoice" msgstr "حفظ الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:22 msgid "Back to Invoice Detail" msgstr "العودة إلى تفاصيل الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:37 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:43 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:37 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:43 msgid "Invoice State" msgstr "حالة الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:75 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:75 msgid "Invoice Ledger" msgstr "دفتر الأستاذ للفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:97 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:97 msgid "Invoice Configuration" msgstr "تكوين الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:6 -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:163 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:6 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:163 msgid "Journal Entry Detail" msgstr "تفاصيل إدخال اليومية" @@ -6546,285 +6486,290 @@ msgstr "تفاصيل إدخال اليومية" msgid "UnLock" msgstr "إلغاء القفل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_create.html:8 -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:44 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_create.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:44 msgid "Create Journal Entry" msgstr "إنشاء إدخال يومية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:14 msgid "Journal Entry Transactions" msgstr "معاملات إدخال اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:20 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:20 msgid "Edit TXS" msgstr "تعديل المعاملات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:24 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:24 msgid "Ledger List" msgstr "قائمة دفاتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:59 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:59 msgid "Done" msgstr "تم" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:123 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:123 msgid "Back to Ledger List" msgstr "العودة إلى قائمة دفاتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:128 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:128 msgid "Lock All" msgstr "قفل الكل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:133 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/je_list.html:133 msgid "Post All" msgstr "نشر الكل" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:8 msgid "Document Number" msgstr "رقم المستند" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:127 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:127 msgid "Show All Ledgers" msgstr "إظهار جميع دفاتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:131 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:131 msgid "Show Only Visible Ledgers" msgstr "إظهار دفاتر الأستاذ المرئية فقط" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:135 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:135 msgid "Show Current Ledgers" msgstr "إظهار دفاتر الأستاذ الحالية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:138 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:138 msgid "Back to Dashboard" msgstr "العودة إلى لوحة القيادة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:11 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:41 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:11 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:41 msgid "Reports" msgstr "التقارير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:12 msgid "Earliest JE Date" msgstr "أقدم تاريخ إدخال اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:15 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:15 msgid "Locked by Closing Entry" msgstr "مقفل بإدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:121 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:121 msgid "Hide" msgstr "إخفاء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:125 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:125 msgid "UnHide" msgstr "إلغاء الإخفاء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/product_list.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/product_list.html:12 msgid "Products List" msgstr "قائمة المنتجات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:8 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:8 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:8 msgid "Type" msgstr "النوع" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:12 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:12 msgid "SKU" msgstr "رمز المنتج (SKU)" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:13 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/product/tags/product_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:13 msgid "UPC" msgstr "رمز المنتج العالمي (UPC)" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:42 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:42 msgid "Contract" msgstr "العقد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:32 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:32 msgid "Review Date" msgstr "تاريخ المراجعة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:43 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:43 msgid "Paid Amount" msgstr "المبلغ المدفوع" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:48 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:48 msgid "Fulfilled Date" msgstr "تاريخ التنفيذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:94 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:94 msgid "Fulfill" msgstr "تنفيذ" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:135 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:135 msgid "New PO" msgstr "أمر شراء جديد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:28 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:28 msgid "Bill Paid?" msgstr "هل تم دفع الفاتورة؟" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:61 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:61 msgid "View Bill" msgstr "عرض الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_table.html:40 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_table.html:40 msgid " Delete" msgstr "حذف" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_create.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_create.html:12 msgid "PO for Estimate" msgstr "أمر شراء للتقدير" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:16 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:27 -#: venv/lib/python3.11/site-packages/django_ledger/views/purchase_order.py:43 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_detail.html:16 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:27 +#: venv/lib/python3.12/site-packages/django_ledger/views/purchase_order.py:43 msgid "PO List" msgstr "قائمة أوامر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:18 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:18 msgid "Latest Purchase Orders" msgstr "أحدث أوامر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:22 msgid "Save PO" msgstr "حفظ أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:25 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:25 msgid "Back to PO Detail" msgstr "العودة إلى تفاصيل أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:52 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:52 msgid "Avg Unit Price" msgstr "متوسط سعر الوحدة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:53 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:53 msgid "Total Contracted Cost" msgstr "إجمالي التكلفة المتعاقد عليها" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:13 msgid "Billed" msgstr "مفوترة" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:41 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:41 msgid "Total PO Amount" msgstr "إجمالي مبلغ أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/service/service_list.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/service/service_list.html:12 msgid "Service List" msgstr "قائمة الخدمات" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_create.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_create.html:12 msgid "Create Entity Unit" msgstr "إنشاء وحدة كيان" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:19 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_list.html:28 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:19 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_list.html:28 msgid "JE Document Prefix" msgstr "بادئة مستند إدخال اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_list.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:23 +#: venv/lib/python3.12/site-packages/django_ledger/views/entity.py:210 +msgid "Dashboard" +msgstr "لوحة القيادة" + +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_list.html:13 msgid "Entity Units List" msgstr "قائمة وحدات الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/unit/unit_update.html:12 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/unit/unit_update.html:12 msgid "Update Entity Unit" msgstr "تحديث وحدة الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:9 msgid "Abbreviation" msgstr "الاختصار" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/uom/uom_list.html:13 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/uom/uom_list.html:13 msgid "Unit of Measures List" msgstr "قائمة وحدات القياس" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/includes/card_vendor.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/includes/card_vendor.html:9 msgid "Vendor Info" msgstr "معلومات المورد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:9 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:9 msgid "Vendor Number" msgstr "رقم المورد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:22 msgid "Create Vendor" msgstr "إنشاء مورد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/vendor_list.html:14 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/vendor_list.html:14 msgid "New Vendor" msgstr "مورد جديد" -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/vendor_update.html:10 -#: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/vendor/vendor_update.html:22 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/vendor_update.html:10 +#: venv/lib/python3.12/site-packages/django_ledger/templates/django_ledger/vendor/vendor_update.html:22 msgid "Update Vendor" msgstr "تحديث المورد" -#: venv/lib/python3.11/site-packages/django_ledger/views/account.py:74 +#: venv/lib/python3.12/site-packages/django_ledger/views/account.py:74 msgid "Entity Accounts" msgstr "حسابات الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/account.py:131 +#: venv/lib/python3.12/site-packages/django_ledger/views/account.py:131 msgid "Update Account" msgstr "تحديث الحساب" -#: venv/lib/python3.11/site-packages/django_ledger/views/account.py:132 +#: venv/lib/python3.12/site-packages/django_ledger/views/account.py:132 #, python-brace-format msgid "Update Account: {self.object.code} - {self.object.name}" msgstr "تحديث الحساب: {self.object.code} - {self.object.name}" -#: venv/lib/python3.11/site-packages/django_ledger/views/bank_account.py:33 +#: venv/lib/python3.12/site-packages/django_ledger/views/bank_account.py:33 msgid "Bank Accounts" msgstr "الحسابات المصرفية" -#: venv/lib/python3.11/site-packages/django_ledger/views/bank_account.py:76 +#: venv/lib/python3.12/site-packages/django_ledger/views/bank_account.py:76 msgid "Update Bank Account" msgstr "تحديث الحساب المصرفي" -#: venv/lib/python3.11/site-packages/django_ledger/views/closing_entry.py:50 +#: venv/lib/python3.12/site-packages/django_ledger/views/closing_entry.py:50 msgid "Closing Entry List" msgstr "قائمة إدخال الإغلاق" -#: venv/lib/python3.11/site-packages/django_ledger/views/coa.py:36 -#: venv/lib/python3.11/site-packages/django_ledger/views/coa.py:37 +#: venv/lib/python3.12/site-packages/django_ledger/views/coa.py:36 +#: venv/lib/python3.12/site-packages/django_ledger/views/coa.py:37 msgid "Chart of Account List" msgstr "قائمة دليل الحسابات" -#: venv/lib/python3.11/site-packages/django_ledger/views/coa.py:77 -#: venv/lib/python3.11/site-packages/django_ledger/views/coa.py:78 +#: venv/lib/python3.12/site-packages/django_ledger/views/coa.py:77 +#: venv/lib/python3.12/site-packages/django_ledger/views/coa.py:78 msgid "CoA: " msgstr "دليل الحسابات:" -#: venv/lib/python3.11/site-packages/django_ledger/views/coa.py:114 +#: venv/lib/python3.12/site-packages/django_ledger/views/coa.py:114 msgid "Successfully updated {} Default Chart of Account to " msgstr "تم تحديث دليل الحسابات الافتراضي {} بنجاح إلى" -#: venv/lib/python3.11/site-packages/django_ledger/views/customer.py:35 +#: venv/lib/python3.12/site-packages/django_ledger/views/customer.py:35 msgid "Customer List" msgstr "قائمة العملاء" -#: venv/lib/python3.11/site-packages/django_ledger/views/customer.py:48 +#: venv/lib/python3.12/site-packages/django_ledger/views/customer.py:48 msgid "Create New Customer" msgstr "إنشاء عميل جديد" -#: venv/lib/python3.11/site-packages/django_ledger/views/customer.py:77 +#: venv/lib/python3.12/site-packages/django_ledger/views/customer.py:77 msgid "Customer Update" msgstr "تحديث العميل" -#: venv/lib/python3.11/site-packages/django_ledger/views/data_import.py:43 +#: venv/lib/python3.12/site-packages/django_ledger/views/data_import.py:43 msgid "Create Import Job" msgstr "إنشاء مهمة استيراد" -#: venv/lib/python3.11/site-packages/django_ledger/views/data_import.py:69 +#: venv/lib/python3.12/site-packages/django_ledger/views/data_import.py:69 msgid "Multiple statements detected. Multiple account import is not supported." msgstr "تم اكتشاف بيانات متعددة. استيراد حسابات متعددة غير مدعوم." -#: venv/lib/python3.11/site-packages/django_ledger/views/data_import.py:92 +#: venv/lib/python3.12/site-packages/django_ledger/views/data_import.py:92 msgid "" "Account Number ***{ofx_account_number[-4:]} not recognized. Please " "{create_link} Bank Account model before importing transactions" @@ -6832,7 +6777,7 @@ msgstr "" "رقم الحساب ***{ofx_account_number[-4:]} غير معروف. يرجى {create_link} نموذج " "حساب بنكي قبل استيراد المعاملات" -#: venv/lib/python3.11/site-packages/django_ledger/views/data_import.py:111 +#: venv/lib/python3.12/site-packages/django_ledger/views/data_import.py:111 msgid "" "Account Number ***{ofx_account_number[-4:]} not active. Please " "{activate_link} before importing new transactions" @@ -6840,265 +6785,265 @@ msgstr "" "رقم الحساب ***{ofx_account_number[-4:]} غير نشط. يرجى {activate_link} قبل " "استيراد المعاملات الجديدة" -#: venv/lib/python3.11/site-packages/django_ledger/views/data_import.py:141 +#: venv/lib/python3.12/site-packages/django_ledger/views/data_import.py:141 msgid "Data Import Jobs" msgstr "مهام استيراد البيانات" -#: venv/lib/python3.11/site-packages/django_ledger/views/data_import.py:177 +#: venv/lib/python3.12/site-packages/django_ledger/views/data_import.py:177 #, python-brace-format msgid "Successfully updated Import Job {self.object.description}" msgstr "تم تحديث مهمة الاستيراد {self.object.description} بنجاح" -#: venv/lib/python3.11/site-packages/django_ledger/views/data_import.py:207 +#: venv/lib/python3.12/site-packages/django_ledger/views/data_import.py:207 msgid "Import Job Staged Txs" msgstr "معاملات مهام الاستيراد المسرّحة" -#: venv/lib/python3.11/site-packages/django_ledger/views/entity.py:57 +#: venv/lib/python3.12/site-packages/django_ledger/views/entity.py:57 msgid "Create Entity" msgstr "إنشاء كيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/entity.py:136 +#: venv/lib/python3.12/site-packages/django_ledger/views/entity.py:136 msgid "Delete Entity " msgstr "حذف الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/estimate.py:40 +#: venv/lib/python3.12/site-packages/django_ledger/views/estimate.py:40 msgid "Customer Estimates" msgstr "تقديرات العملاء" -#: venv/lib/python3.11/site-packages/django_ledger/views/estimate.py:53 +#: venv/lib/python3.12/site-packages/django_ledger/views/estimate.py:53 msgid "Create Customer Estimate" msgstr "إنشاء تقدير للعميل" -#: venv/lib/python3.11/site-packages/django_ledger/views/estimate.py:87 +#: venv/lib/python3.12/site-packages/django_ledger/views/estimate.py:87 msgid "Customer Estimate Detail" msgstr "تفاصيل تقدير العميل" -#: venv/lib/python3.11/site-packages/django_ledger/views/estimate.py:140 +#: venv/lib/python3.12/site-packages/django_ledger/views/estimate.py:140 msgid "Customer Estimate Update" msgstr "تحديث تقدير العميل" -#: venv/lib/python3.11/site-packages/django_ledger/views/financial_statement.py:113 -#: venv/lib/python3.11/site-packages/django_ledger/views/financial_statement.py:114 +#: venv/lib/python3.12/site-packages/django_ledger/views/financial_statement.py:113 +#: venv/lib/python3.12/site-packages/django_ledger/views/financial_statement.py:114 msgid "Income Statement: " msgstr "بيان الدخل:" -#: venv/lib/python3.11/site-packages/django_ledger/views/financial_statement.py:173 -#: venv/lib/python3.11/site-packages/django_ledger/views/financial_statement.py:174 +#: venv/lib/python3.12/site-packages/django_ledger/views/financial_statement.py:173 +#: venv/lib/python3.12/site-packages/django_ledger/views/financial_statement.py:174 msgid "Cash Flow Statement: " msgstr "بيان التدفق النقدي:" -#: venv/lib/python3.11/site-packages/django_ledger/views/home.py:27 +#: venv/lib/python3.12/site-packages/django_ledger/views/home.py:27 msgid "My Dashboard" msgstr "لوحة القيادة الخاصة بي" -#: venv/lib/python3.11/site-packages/django_ledger/views/inventory.py:46 +#: venv/lib/python3.12/site-packages/django_ledger/views/inventory.py:46 msgid "Inventory Status" msgstr "حالة المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/views/inventory.py:47 +#: venv/lib/python3.12/site-packages/django_ledger/views/inventory.py:47 msgid "Ordered/In Transit/On Hand" msgstr "تم الطلب/في النقل/متوفر" -#: venv/lib/python3.11/site-packages/django_ledger/views/inventory.py:84 -#: venv/lib/python3.11/site-packages/django_ledger/views/inventory.py:85 +#: venv/lib/python3.12/site-packages/django_ledger/views/inventory.py:84 +#: venv/lib/python3.12/site-packages/django_ledger/views/inventory.py:85 msgid "Inventory Recount" msgstr "إعادة تعداد المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/views/invoice.py:412 +#: venv/lib/python3.12/site-packages/django_ledger/views/invoice.py:412 msgid "Delete Invoice " msgstr "حذف الفاتورة" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:43 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:43 msgid "Unit of Measures" msgstr "وحدات القياس" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:54 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:54 msgid "Create Unit of Measure" msgstr "إنشاء وحدة قياس" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:85 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:85 #, python-brace-format msgid "User {self.request.user.username} cannot access entity {entity_slug}." msgstr "" "المستخدم {self.request.user.username} لا يمكنه الوصول إلى الكيان " "{entity_slug}." -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:95 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:95 #, python-brace-format msgid "" "The Unit of Measure {unit_abbr} already created for Entity {entity_model." "name}." msgstr "وحدة القياس {unit_abbr} تم إنشاؤها بالفعل للكيان {entity_model.name}." -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:103 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:103 msgid "Update Unit of Measure" msgstr "تحديث وحدة القياس" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:175 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:175 msgid "Products" msgstr "المنتجات" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:187 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:187 msgid "Create New Product" msgstr "إنشاء منتج جديد" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:219 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:219 msgid "Update Product" msgstr "تحديث المنتج" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:297 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:297 msgid "Services" msgstr "الخدمات" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:309 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:309 msgid "Create New Service" msgstr "إنشاء خدمة جديدة" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:340 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:340 msgid "Update Service" msgstr "تحديث الخدمة" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:416 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:416 msgid "Expense Items" msgstr "عناصر النفقات" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:428 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:428 msgid "Create New Expense Item" msgstr "إنشاء عنصر نفقة جديد" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:460 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:460 msgid "Update Expense Item" msgstr "تحديث عنصر النفقة" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:501 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:501 msgid "Inventory Items" msgstr "عناصر المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:513 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:513 msgid "Create New Inventory Item" msgstr "إنشاء عنصر مخزون جديد" -#: venv/lib/python3.11/site-packages/django_ledger/views/item.py:549 +#: venv/lib/python3.12/site-packages/django_ledger/views/item.py:549 msgid "Update Inventory Item" msgstr "تحديث عنصر المخزون" -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:125 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:125 msgid "Update Journal Entry" msgstr "تحديث إدخال اليومية" -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:194 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:194 msgid "Edit Transactions" msgstr "تحرير المعاملات" -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:211 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:211 msgid "Locked Journal Entry. Must unlock to Edit." msgstr "إدخال اليومية مقفل. يجب إلغاء القفل لتحريره." -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:244 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:244 msgid "Cannot update a Locked Journal Entry." msgstr "لا يمكن تحديث إدخال اليومية المقفل." -#: venv/lib/python3.11/site-packages/django_ledger/views/journal_entry.py:251 +#: venv/lib/python3.12/site-packages/django_ledger/views/journal_entry.py:251 msgid "Journal Entry has not been posted." msgstr "إدخال اليومية لم يتم نشره." -#: venv/lib/python3.11/site-packages/django_ledger/views/ledger.py:44 +#: venv/lib/python3.12/site-packages/django_ledger/views/ledger.py:44 msgid "Entity Ledgers" msgstr "دفاتر الأستاذ للكيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/ledger.py:96 +#: venv/lib/python3.12/site-packages/django_ledger/views/ledger.py:96 msgid "Create Ledger" msgstr "إنشاء دفتر الأستاذ" -#: venv/lib/python3.11/site-packages/django_ledger/views/ledger.py:145 +#: venv/lib/python3.12/site-packages/django_ledger/views/ledger.py:145 msgid "Update Ledger: " msgstr "تحديث دفتر الأستاذ:" -#: venv/lib/python3.11/site-packages/django_ledger/views/ledger.py:228 +#: venv/lib/python3.12/site-packages/django_ledger/views/ledger.py:228 msgid "Ledger Balance Sheet: " msgstr "الميزانية العمومية لدفتر الأستاذ:" -#: venv/lib/python3.11/site-packages/django_ledger/views/ledger.py:277 +#: venv/lib/python3.12/site-packages/django_ledger/views/ledger.py:277 msgid "Ledger Income Statement: " msgstr "بيان الدخل لدفتر الأستاذ:" -#: venv/lib/python3.11/site-packages/django_ledger/views/ledger.py:331 +#: venv/lib/python3.12/site-packages/django_ledger/views/ledger.py:331 msgid "Ledger Cash Flow Statement: " msgstr "بيان التدفق النقدي لدفتر الأستاذ:" -#: venv/lib/python3.11/site-packages/django_ledger/views/mixins.py:92 +#: venv/lib/python3.12/site-packages/django_ledger/views/mixins.py:92 msgid "Invalid quarter number" msgstr "رقم ربع غير صالح" -#: venv/lib/python3.11/site-packages/django_ledger/views/mixins.py:94 +#: venv/lib/python3.12/site-packages/django_ledger/views/mixins.py:94 #, python-brace-format msgid "Invalid quarter format. Cannot parse {quarter} into integer." msgstr "تنسيق ربع غير صالح. لا يمكن تحليل {quarter} إلى عدد صحيح." -#: venv/lib/python3.11/site-packages/django_ledger/views/mixins.py:106 +#: venv/lib/python3.12/site-packages/django_ledger/views/mixins.py:106 msgid "No quarter specified" msgstr "لم يتم تحديد ربع" -#: venv/lib/python3.11/site-packages/django_ledger/views/mixins.py:277 -#: venv/lib/python3.11/site-packages/django_ledger/views/mixins.py:285 +#: venv/lib/python3.12/site-packages/django_ledger/views/mixins.py:277 +#: venv/lib/python3.12/site-packages/django_ledger/views/mixins.py:285 #, python-brace-format msgid "Must provide {query_param} date parameter." msgstr "يجب تقديم معامل التاريخ {query_param}." -#: venv/lib/python3.11/site-packages/django_ledger/views/mixins.py:298 +#: venv/lib/python3.12/site-packages/django_ledger/views/mixins.py:298 #, python-brace-format msgid "Invalid {query_param} {param_date} provided" msgstr "تم تقديم {query_param} {param_date} غير صالح" -#: venv/lib/python3.11/site-packages/django_ledger/views/mixins.py:330 +#: venv/lib/python3.12/site-packages/django_ledger/views/mixins.py:330 msgid "ENTITY_SLUG_URL_KWARG must be provided." msgstr "يجب توفير ENTITY_SLUG_URL_KWARG." -#: venv/lib/python3.11/site-packages/django_ledger/views/purchase_order.py:83 +#: venv/lib/python3.12/site-packages/django_ledger/views/purchase_order.py:83 msgid "Create Purchase Order" msgstr "إنشاء أمر شراء" -#: venv/lib/python3.11/site-packages/django_ledger/views/purchase_order.py:408 +#: venv/lib/python3.12/site-packages/django_ledger/views/purchase_order.py:408 msgid "Delete Purchase Order " msgstr "حذف أمر الشراء" -#: venv/lib/python3.11/site-packages/django_ledger/views/unit.py:39 +#: venv/lib/python3.12/site-packages/django_ledger/views/unit.py:39 msgid "Entity Unit List" msgstr "قائمة وحدات الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/unit.py:50 +#: venv/lib/python3.12/site-packages/django_ledger/views/unit.py:50 msgid "Entity Unit Detail" msgstr "تفاصيل وحدة الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/unit.py:62 +#: venv/lib/python3.12/site-packages/django_ledger/views/unit.py:62 msgid "Entity Unit Create" msgstr "إنشاء وحدة كيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/unit.py:93 +#: venv/lib/python3.12/site-packages/django_ledger/views/unit.py:93 msgid "Entity Unit Update" msgstr "تحديث وحدة الكيان" -#: venv/lib/python3.11/site-packages/django_ledger/views/vendor.py:34 +#: venv/lib/python3.12/site-packages/django_ledger/views/vendor.py:34 msgid "Vendor List" msgstr "قائمة الموردين" -#: venv/lib/python3.11/site-packages/django_ledger/views/vendor.py:44 +#: venv/lib/python3.12/site-packages/django_ledger/views/vendor.py:44 msgid "Create New Vendor" msgstr "إنشاء مورد جديد" -#: venv/lib/python3.11/site-packages/django_ledger/views/vendor.py:71 +#: venv/lib/python3.12/site-packages/django_ledger/views/vendor.py:71 msgid "Vendor Update" msgstr "تحديث المورد" -#: venv/lib/python3.11/site-packages/djmoney/contrib/django_rest_framework/fields.py:35 +#: venv/lib/python3.12/site-packages/djmoney/contrib/django_rest_framework/fields.py:35 msgid "{currency!r} is not a valid currency" msgstr "" -#: venv/lib/python3.11/site-packages/isort/main.py:158 +#: venv/lib/python3.12/site-packages/isort/main.py:158 msgid "show this help message and exit" msgstr "إظهار رسالة المساعدة هذه والخروج" -#: venv/lib/python3.11/site-packages/silk/middleware.py:79 +#: venv/lib/python3.12/site-packages/silk/middleware.py:79 msgid "" "SILKY_AUTHENTICATION can not be enabled without Session, Authentication or " "Message Django's middlewares" diff --git a/templates/dealers/dealer_detail.html b/templates/dealers/dealer_detail.html index 74702e60..c41f8bbc 100644 --- a/templates/dealers/dealer_detail.html +++ b/templates/dealers/dealer_detail.html @@ -26,6 +26,7 @@ {{ _("Name") }} {{ dealer.get_local_name }} + {% if request.user.dealer.is_parent %} {{ _("Commercial Registration Number") }} {{ dealer.crn }} @@ -34,6 +35,7 @@ {{ _("VAT Registration Number") }} {{ dealer.vrn }} + {% endif %} {{ _("Phone Number") }} {{ dealer.phone_number }} diff --git a/templates/errors/400.html b/templates/errors/400.html new file mode 100644 index 00000000..9ec66330 --- /dev/null +++ b/templates/errors/400.html @@ -0,0 +1,48 @@ +{% extends "base.html" %} + +{% load i18n %} + +{% block content %} + + +
+

{% trans "400" %}

+

{% trans "Bad Request" %}

+ {% trans "Go Back" %} +
+{% endblock content %} \ No newline at end of file diff --git a/templates/errors/403.html b/templates/errors/403.html new file mode 100644 index 00000000..4cac10ae --- /dev/null +++ b/templates/errors/403.html @@ -0,0 +1,48 @@ +{% extends "base.html" %} + +{% load i18n %} + +{% block content %} + + +
+

{% trans "403" %}

+

{% trans "You do not have permission to view this page." %}

+ {% trans "Go Back" %} +
+{% endblock content %} \ No newline at end of file diff --git a/templates/errors/404.html b/templates/errors/404.html new file mode 100644 index 00000000..4ec33903 --- /dev/null +++ b/templates/errors/404.html @@ -0,0 +1,48 @@ +{% extends "base.html" %} + +{% load i18n %} + +{% block content %} + + +
+

{% trans "404" %}

+

{% trans "Page not found" %}

+ {% trans "Go Back" %} +
+{% endblock content %} \ No newline at end of file diff --git a/templates/errors/500.html b/templates/errors/500.html new file mode 100644 index 00000000..4691df7d --- /dev/null +++ b/templates/errors/500.html @@ -0,0 +1,48 @@ +{% extends "base.html" %} + +{% load i18n %} + +{% block content %} + + +
+

{% trans "500" %}

+

{% trans "Internal Server Error" %}

+ {% trans "Go Back" %} +
+{% endblock content %} \ No newline at end of file diff --git a/templates/header.html b/templates/header.html index 287ba9a4..2de3f449 100644 --- a/templates/header.html +++ b/templates/header.html @@ -1,6 +1,6 @@ {% load i18n %} {% load static %} - +