From 43157e637bf277c117b55932f984ee30fdb8a32b Mon Sep 17 00:00:00 2001 From: Daniel Jonker Date: Tue, 17 Sep 2024 00:51:35 +0200 Subject: [PATCH 1/5] Ongoing writeoff --- alexia/apps/billing/admin.py | 2 +- ...category_writeofforder_writeoffpurchase.py | 59 + .../0020_writeoffcategory_is_active.py | 18 + alexia/apps/billing/models.py | 65 + alexia/apps/billing/views.py | 1 + alexia/apps/organization/admin.py | 11 +- .../0025_organization_writeoff_enabled.py | 18 + alexia/apps/organization/models.py | 1 + assets/js/juliana.js | 17 +- locale/nl/LC_MESSAGES/django.mo | Bin 27914 -> 27894 bytes locale/nl/LC_MESSAGES/django.po | 1758 ++++++++++++++--- templates/billing/juliana.html | 10 + 12 files changed, 1645 insertions(+), 315 deletions(-) create mode 100644 alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py create mode 100644 alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py create mode 100644 alexia/apps/organization/migrations/0025_organization_writeoff_enabled.py diff --git a/alexia/apps/billing/admin.py b/alexia/apps/billing/admin.py index 5fa5844..61ffb34 100644 --- a/alexia/apps/billing/admin.py +++ b/alexia/apps/billing/admin.py @@ -2,7 +2,7 @@ from .models import ( Authorization, Order, PermanentProduct, PriceGroup, ProductGroup, Purchase, - RfidCard, SellingPrice, + RfidCard, SellingPrice, WriteoffCategory, ) diff --git a/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py b/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py new file mode 100644 index 0000000..c8c9709 --- /dev/null +++ b/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py @@ -0,0 +1,59 @@ +# Generated by Django 2.2.28 on 2024-09-16 20:27 + +import alexia.core.validators +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import django.utils.timezone + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('organization', '0025_organization_writeoff_enabled'), + ('billing', '0018_product_shortcut'), + ] + + operations = [ + migrations.CreateModel( + name='WriteoffCategory', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=20, verbose_name='name')), + ('description', models.CharField(max_length=50, verbose_name='short description')), + ('color', models.CharField(blank=True, max_length=6, validators=[alexia.core.validators.validate_color], verbose_name='color')), + ('organization', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organization.Organization', verbose_name='organization')), + ], + ), + migrations.CreateModel( + name='WriteOffOrder', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('placed_at', models.DateTimeField(default=django.utils.timezone.now, verbose_name='placed at')), + ('amount', models.DecimalField(decimal_places=2, max_digits=15, verbose_name='amount')), + ('added_by', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='added by')), + ('event', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='writeoff_orders', to='scheduling.Event', verbose_name='event')), + ], + options={ + 'verbose_name': 'order', + 'verbose_name_plural': 'orders', + 'ordering': ['-placed_at'], + }, + ), + migrations.CreateModel( + name='WriteOffPurchase', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('product', models.CharField(max_length=32, verbose_name='product')), + ('amount', models.PositiveSmallIntegerField(verbose_name='amount')), + ('price', models.DecimalField(decimal_places=2, max_digits=15, verbose_name='price')), + ('order', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='writeoff_purchases', to='billing.WriteOffOrder', verbose_name='order')), + ('writeoff_category', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='billing.WriteoffCategory', verbose_name='writeoff category')), + ], + options={ + 'verbose_name': 'purchase', + 'verbose_name_plural': 'purchases', + }, + ), + ] diff --git a/alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py b/alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py new file mode 100644 index 0000000..192a207 --- /dev/null +++ b/alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py @@ -0,0 +1,18 @@ +# Generated by Django 2.2.28 on 2024-09-16 21:29 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('billing', '0019_writeoffcategory_writeofforder_writeoffpurchase'), + ] + + operations = [ + migrations.AddField( + model_name='writeoffcategory', + name='is_active', + field=models.BooleanField(default=False, verbose_name='active'), + ), + ] diff --git a/alexia/apps/billing/models.py b/alexia/apps/billing/models.py index dc11600..49e0455 100644 --- a/alexia/apps/billing/models.py +++ b/alexia/apps/billing/models.py @@ -331,3 +331,68 @@ class Meta: def __str__(self): return '%s x %s' % (self.amount, self.product) + +@python_2_unicode_compatible +class WriteoffCategory(models.Model): + name = models.CharField(_('name'), max_length=20) + description = models.CharField(_('short description'), max_length=50) + color = models.CharField(verbose_name=_('color'), blank=True, max_length=6, validators=[validate_color]) + organization = models.ForeignKey( + Organization, + on_delete=models.CASCADE, + verbose_name=_('organization') + ) + is_active = models.BooleanField(_('active'), default=False) + +@python_2_unicode_compatible +class WriteOffOrder(models.Model): + event = models.ForeignKey(Event, on_delete=models.PROTECT, related_name='writeoff_orders', verbose_name=_('event')) + placed_at = models.DateTimeField(_('placed at'), default=timezone.now) + added_by = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.PROTECT, + verbose_name=_('added by'), + related_name='+', + ) + amount = models.DecimalField(_('amount'), max_digits=15, decimal_places=2) + + class Meta: + ordering = ['-placed_at'] + verbose_name = _('order') + verbose_name_plural = _('orders') + + def __str__(self): + return _('{time} on {event}').format( + time=self.placed_at.strftime('%H:%M'), + event=self.event.name, + ) + + def save(self, *args, **kwargs): + self.amount = self.get_price() + super(WriteOffOrder, self).save(*args, **kwargs) + + def get_price(self): + amount = Decimal('0.0') + for purchase in self.purchases.all(): + amount += purchase.price + return amount + + +@python_2_unicode_compatible +class WriteOffPurchase(models.Model): + order = models.ForeignKey(WriteOffOrder, on_delete=models.CASCADE, related_name='writeoff_purchases', verbose_name=_('order')) + product = models.CharField(_('product'), max_length=32) + amount = models.PositiveSmallIntegerField(_('amount')) + price = models.DecimalField(_('price'), max_digits=15, decimal_places=2) + writeoff_category = models.ForeignKey( + WriteoffCategory, + on_delete=models.PROTECT, # We cannot delete purchases + verbose_name=_('writeoff category') + ) + + class Meta: + verbose_name = _('purchase') + verbose_name_plural = _('purchases') + + def __str__(self): + return '%s x %s' % (self.amount, self.product) \ No newline at end of file diff --git a/alexia/apps/billing/views.py b/alexia/apps/billing/views.py index aba3c5e..815bf8a 100644 --- a/alexia/apps/billing/views.py +++ b/alexia/apps/billing/views.py @@ -57,6 +57,7 @@ def get_context_data(self, **kwargs): 'products': self.get_product_list(), 'countdown': settings.JULIANA_COUNTDOWN if hasattr(settings, 'JULIANA_COUNTDOWN') else 5, 'androidapp': self.request.META.get('HTTP_X_REQUESTED_WITH') == 'net.inter_actief.juliananfc', + 'writeoff': self.object.organizer.writeoff_enabled }) return context diff --git a/alexia/apps/organization/admin.py b/alexia/apps/organization/admin.py index eb28c00..62cb6ad 100644 --- a/alexia/apps/organization/admin.py +++ b/alexia/apps/organization/admin.py @@ -3,7 +3,7 @@ from django.contrib.auth.models import Group, User from django.utils.translation import ugettext_lazy as _ -from alexia.apps.billing.models import Authorization, RfidCard +from alexia.apps.billing.models import Authorization, RfidCard, WriteoffCategory from alexia.apps.scheduling.models import Availability from .models import ( @@ -74,10 +74,13 @@ class LocationAdmin(admin.ModelAdmin): class AvailabilityInline(admin.TabularInline): model = Availability extra = 0 - + +class WriteoffCategoryInline(admin.TabularInline): + model = WriteoffCategory + extra = 0 @admin.register(Organization) class OrganizationAdmin(admin.ModelAdmin): - fields = [('name', 'assigns_tenders'), 'is_active', 'color'] - inlines = [AvailabilityInline] + fields = [('name', 'assigns_tenders'), 'is_active', 'color', 'writeoff_enabled'] + inlines = [AvailabilityInline, WriteoffCategoryInline] list_display = ['name'] diff --git a/alexia/apps/organization/migrations/0025_organization_writeoff_enabled.py b/alexia/apps/organization/migrations/0025_organization_writeoff_enabled.py new file mode 100644 index 0000000..348c069 --- /dev/null +++ b/alexia/apps/organization/migrations/0025_organization_writeoff_enabled.py @@ -0,0 +1,18 @@ +# Generated by Django 2.2.28 on 2024-09-16 20:27 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('organization', '0024_saml_to_oidc_auth'), + ] + + operations = [ + migrations.AddField( + model_name='organization', + name='writeoff_enabled', + field=models.BooleanField(default=False, verbose_name='writeoff enabled'), + ), + ] diff --git a/alexia/apps/organization/models.py b/alexia/apps/organization/models.py index 4d19baf..633dd3a 100644 --- a/alexia/apps/organization/models.py +++ b/alexia/apps/organization/models.py @@ -133,6 +133,7 @@ class Organization(models.Model): color = models.CharField(verbose_name=_('color'), blank=True, max_length=6, validators=[validate_color]) assigns_tenders = models.BooleanField(_('assigns tenders'), default=False) is_active = models.BooleanField(_('is active'), default=True) + writeoff_enabled = models.BooleanField(_('writeoff enabled'), default=False) members = models.ManyToManyField( settings.AUTH_USER_MODEL, through='Membership', diff --git a/assets/js/juliana.js b/assets/js/juliana.js index 58ea097..127b288 100644 --- a/assets/js/juliana.js +++ b/assets/js/juliana.js @@ -30,6 +30,7 @@ State = { ERROR: 2, CHECK: 3, MESSAGE: 4, + WRITEOFF: 5, current: this.SALES, toggleTo: function (newState, argument) { @@ -87,6 +88,14 @@ State = { $('#current-message').html(argument); $('#message-screen').show(); break; + case this.WRITEOFF: + this.current = this.WRITEOFF; + this._hideAllScreens(); + console.log('Changing to WRITEOFF'); + + // HTML Magic and rendering + // argument is the Receipt object + break; default: console.log('Error: no known state'); break; @@ -302,7 +311,10 @@ Receipt = { var sum = Receipt.updateTotalAmount(); var amount = Math.ceil(sum / 10) * 10; State.toggleTo(State.MESSAGE, 'Dat wordt dan € ' + (amount/100).toFixed(2)); - } + }, + writeoff: () => { + State.toggleTo(State.WRITEOFF, this); + } }; /* @@ -467,6 +479,9 @@ $(function () { break; case 'ok': State.toggleTo(State.SALES); + break; + case 'writeoff': + alert("TODO"); break; default: Display.set('ongeimplementeerde functie'); diff --git a/locale/nl/LC_MESSAGES/django.mo b/locale/nl/LC_MESSAGES/django.mo index 064eed6136397a996972bfe12b6924c3f5ac4ccb..691664494c76fb07346979e1445d2488b2bf64a1 100644 GIT binary patch delta 8383 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 F{x2bg)j|LO delta 8402 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 diff --git a/locale/nl/LC_MESSAGES/django.po b/locale/nl/LC_MESSAGES/django.po index c1473f7..c133b46 100644 --- a/locale/nl/LC_MESSAGES/django.po +++ b/locale/nl/LC_MESSAGES/django.po @@ -6,9 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: alexia\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-06-20 11:16+0200\n" -"PO-Revision-Date: 2022-06-20 11:17+0020\n" -"Last-Translator: b'Bram van Dartel '\n" +"POT-Creation-Date: 2024-09-16 22:34+0200\n" +"PO-Revision-Date: 2024-09-16 22:50+0018\n" +"Last-Translator: b' '\n" "Language-Team: WWW-commissie \n" "Language: nl\n" "MIME-Version: 1.0\n" @@ -21,11 +21,11 @@ msgstr "" msgid "Export" msgstr "Exporteren" -#: alexia/apps/billing/forms.py:53 alexia/apps/scheduling/forms.py:69 +#: alexia/apps/billing/forms.py:53 alexia/apps/scheduling/forms.py:74 msgid "From time" msgstr "Begintijd" -#: alexia/apps/billing/forms.py:54 alexia/apps/scheduling/forms.py:70 +#: alexia/apps/billing/forms.py:54 alexia/apps/scheduling/forms.py:75 msgid "Till time" msgstr "Eindtijd" @@ -33,11 +33,11 @@ msgstr "Eindtijd" msgid "New price group" msgstr "Nieuwe prijsgroep" -#: alexia/apps/billing/models.py:23 alexia/apps/billing/models.py:45 alexia/apps/billing/models.py:140 alexia/apps/billing/models.py:228 alexia/apps/organization/models.py:140 alexia/apps/organization/models.py:161 alexia/apps/scheduling/models.py:28 alexia/apps/scheduling/models.py:206 +#: alexia/apps/billing/models.py:23 alexia/apps/billing/models.py:45 alexia/apps/billing/models.py:140 alexia/apps/billing/models.py:228 alexia/apps/billing/models.py:343 alexia/apps/organization/models.py:146 alexia/apps/organization/models.py:167 alexia/apps/scheduling/models.py:28 alexia/apps/scheduling/models.py:206 msgid "organization" msgstr "organisatie" -#: alexia/apps/billing/models.py:26 alexia/apps/billing/models.py:48 alexia/apps/billing/models.py:91 alexia/apps/consumption/models.py:14 alexia/apps/organization/models.py:19 alexia/apps/organization/models.py:127 alexia/apps/scheduling/models.py:29 alexia/apps/scheduling/models.py:60 alexia/apps/scheduling/models.py:208 +#: alexia/apps/billing/models.py:26 alexia/apps/billing/models.py:48 alexia/apps/billing/models.py:91 alexia/apps/billing/models.py:337 alexia/apps/consumption/models.py:14 alexia/apps/organization/models.py:21 alexia/apps/organization/models.py:131 alexia/apps/scheduling/models.py:29 alexia/apps/scheduling/models.py:60 alexia/apps/scheduling/models.py:208 msgid "name" msgstr "naam" @@ -57,7 +57,7 @@ msgstr "prijsgroep" msgid "price groups" msgstr "prijsgroepen" -#: alexia/apps/billing/models.py:72 alexia/apps/billing/models.py:177 alexia/apps/billing/models.py:326 +#: alexia/apps/billing/models.py:72 alexia/apps/billing/models.py:177 alexia/apps/billing/models.py:326 alexia/apps/billing/models.py:385 msgid "price" msgstr "prijs" @@ -98,7 +98,7 @@ msgstr "Achtergrondkleur voor Juliana" msgid "position" msgstr "positie" -#: alexia/apps/billing/models.py:146 alexia/apps/billing/models.py:324 alexia/apps/consumption/models.py:137 alexia/apps/consumption/models.py:189 +#: alexia/apps/billing/models.py:146 alexia/apps/billing/models.py:324 alexia/apps/billing/models.py:383 alexia/apps/consumption/models.py:137 alexia/apps/consumption/models.py:189 msgid "product" msgstr "product" @@ -106,7 +106,7 @@ msgstr "product" msgid "products" msgstr "producten" -#: alexia/apps/billing/models.py:175 alexia/apps/billing/models.py:270 alexia/apps/consumption/models.py:50 alexia/apps/scheduling/models.py:107 alexia/apps/scheduling/models.py:240 +#: alexia/apps/billing/models.py:175 alexia/apps/billing/models.py:270 alexia/apps/billing/models.py:348 alexia/apps/consumption/models.py:50 alexia/apps/scheduling/models.py:107 alexia/apps/scheduling/models.py:240 msgid "event" msgstr "activiteit" @@ -122,7 +122,7 @@ msgstr "tijdelijke producten" msgid "identifier" msgstr "identifier" -#: alexia/apps/billing/models.py:199 alexia/apps/scheduling/models.py:32 +#: alexia/apps/billing/models.py:199 alexia/apps/organization/models.py:135 alexia/apps/scheduling/models.py:32 msgid "is active" msgstr "is actief" @@ -130,7 +130,7 @@ msgstr "is actief" msgid "registered at" msgstr "geregistreerd op" -#: alexia/apps/billing/models.py:201 alexia/apps/billing/models.py:222 alexia/apps/organization/models.py:36 alexia/apps/organization/models.py:51 alexia/apps/organization/models.py:156 +#: alexia/apps/billing/models.py:201 alexia/apps/billing/models.py:222 alexia/apps/organization/models.py:38 alexia/apps/organization/models.py:53 alexia/apps/organization/models.py:162 msgid "user" msgstr "gebruiker" @@ -171,7 +171,7 @@ msgstr "autorisaties" msgid "{user} of {organization}" msgstr "{user} van {organization}" -#: alexia/apps/billing/models.py:277 +#: alexia/apps/billing/models.py:277 alexia/apps/billing/models.py:349 msgid "placed at" msgstr "geplaatst op" @@ -183,11 +183,11 @@ msgstr "gesynchroniseerd" msgid "Designates whether this transaction is imported by the organization." msgstr "Geeft aan of deze transactie al is gesynchroniseerd." -#: alexia/apps/billing/models.py:288 +#: alexia/apps/billing/models.py:288 alexia/apps/billing/models.py:353 msgid "added by" msgstr "toegevoegd door" -#: alexia/apps/billing/models.py:291 alexia/apps/billing/models.py:325 alexia/apps/consumption/models.py:191 +#: alexia/apps/billing/models.py:291 alexia/apps/billing/models.py:325 alexia/apps/billing/models.py:356 alexia/apps/billing/models.py:384 alexia/apps/consumption/models.py:191 msgid "amount" msgstr "aantal" @@ -195,11 +195,11 @@ msgstr "aantal" msgid "rfid card" msgstr "RFID-kaart" -#: alexia/apps/billing/models.py:296 alexia/apps/billing/models.py:323 +#: alexia/apps/billing/models.py:296 alexia/apps/billing/models.py:323 alexia/apps/billing/models.py:360 alexia/apps/billing/models.py:382 msgid "order" msgstr "transactie" -#: alexia/apps/billing/models.py:297 +#: alexia/apps/billing/models.py:297 alexia/apps/billing/models.py:361 msgid "orders" msgstr "transacties" @@ -212,14 +212,34 @@ msgstr "{user} om {time} bij {event}" msgid "debtor" msgstr "debiteur" -#: alexia/apps/billing/models.py:329 +#: alexia/apps/billing/models.py:329 alexia/apps/billing/models.py:393 msgid "purchase" msgstr "aankoop" -#: alexia/apps/billing/models.py:330 +#: alexia/apps/billing/models.py:330 alexia/apps/billing/models.py:394 msgid "purchases" msgstr "aankopen" +#: alexia/apps/billing/models.py:338 +#, fuzzy +#| msgid "description" +msgid "short description" +msgstr "omschrijving" + +#: alexia/apps/billing/models.py:339 alexia/apps/organization/models.py:23 alexia/apps/organization/models.py:133 +msgid "color" +msgstr "kleur" + +#: alexia/apps/billing/models.py:364 +#, fuzzy, python-brace-format +#| msgid "{user} at {time} on {event}" +msgid "{time} on {event}" +msgstr "{user} om {time} bij {event}" + +#: alexia/apps/billing/models.py:389 +msgid "writeoff category" +msgstr "Afschrijf categorie" + #: alexia/apps/billing/views.py:47 alexia/apps/consumption/views.py:73 msgid "You are not a tender for this event" msgstr "Je bent geen tapper bij deze borrel!" @@ -240,7 +260,7 @@ msgstr "Verbruik" msgid "General" msgstr "Generiek" -#: alexia/apps/config.py:24 alexia/apps/scheduling/forms.py:68 templates/billing/permanentproduct_detail.html:31 templates/billing/pricegroup_detail.html:31 templates/consumption/consumptionform_list.html:31 templates/consumption/consumptionform_list.html:68 templates/consumption/pdf/page.html:9 templates/general/about.html:40 templates/organization/certificate_form.html:27 templates/profile/profile.html:121 templates/profile/profile.html:146 templates/scheduling/event_calendar.html:26 templates/scheduling/event_list.html:37 templates/scheduling/mailtemplate_detail.html:24 +#: alexia/apps/config.py:24 alexia/apps/scheduling/forms.py:73 templates/billing/permanentproduct_detail.html:31 templates/billing/pricegroup_detail.html:31 templates/consumption/consumptionform_list.html:31 templates/consumption/consumptionform_list.html:68 templates/consumption/pdf/page.html:9 templates/general/about.html:40 templates/organization/certificate_form.html:27 templates/profile/profile.html:121 templates/profile/profile.html:146 templates/scheduling/event_calendar.html:26 templates/scheduling/event_list.html:37 templates/scheduling/mailtemplate_detail.html:24 msgid "Organization" msgstr "Organisatie" @@ -300,7 +320,7 @@ msgstr "Jaar" msgid "File format" msgstr "Bestandsformaat" -#: alexia/apps/consumption/models.py:15 alexia/apps/organization/models.py:167 +#: alexia/apps/consumption/models.py:15 alexia/apps/organization/models.py:173 msgid "is currently active" msgstr "is actief" @@ -344,7 +364,7 @@ msgstr "afgerond door" msgid "completed at" msgstr "afgerond op" -#: alexia/apps/consumption/models.py:59 alexia/apps/organization/models.py:163 +#: alexia/apps/consumption/models.py:59 alexia/apps/organization/models.py:169 msgid "comments" msgstr "commentaar" @@ -423,9 +443,11 @@ msgstr "Je bent geen tapper bij deze borrel." msgid "This consumption form has been completed." msgstr "Dit verbruiksformulier is al afgerond." -#: alexia/apps/general/views.py:126 -msgid "Logging in failed, please try again." -msgstr "Het inloggen is mislukt, probeer het alsjeblieft opnieuw." +#: alexia/apps/general/views.py:129 +#, fuzzy +#| msgid "organizations" +msgid "This organization is inactive." +msgstr "organisatie" #: alexia/apps/organization/admin.py:56 msgid "Permissions" @@ -447,136 +469,136 @@ msgstr "Student- of medewerkersaccount (bijv. s0000000 of m0000000)" msgid "Bartender nickname" msgstr "Tappersbijnaam" -#: alexia/apps/organization/models.py:20 +#: alexia/apps/organization/models.py:22 msgid "prevent conflicting events" msgstr "voorkom conflicterende activiteiten" -#: alexia/apps/organization/models.py:21 alexia/apps/organization/models.py:129 -msgid "color" -msgstr "kleur" - -#: alexia/apps/organization/models.py:25 alexia/apps/scheduling/models.py:67 +#: alexia/apps/organization/models.py:27 alexia/apps/scheduling/models.py:67 msgid "location" msgstr "locatie" -#: alexia/apps/organization/models.py:26 +#: alexia/apps/organization/models.py:28 msgid "locations" msgstr "locaties" -#: alexia/apps/organization/models.py:38 +#: alexia/apps/organization/models.py:40 msgid "authentication backend" msgstr "authenticatiesysteem" -#: alexia/apps/organization/models.py:39 +#: alexia/apps/organization/models.py:41 msgid "username" msgstr "gebruikersnaam" -#: alexia/apps/organization/models.py:40 +#: alexia/apps/organization/models.py:42 msgid "additional data" msgstr "aanvullende gegevens" -#: alexia/apps/organization/models.py:55 +#: alexia/apps/organization/models.py:57 msgid "has IVA-certificate" msgstr "heeft IVA-certificaat" -#: alexia/apps/organization/models.py:58 +#: alexia/apps/organization/models.py:60 msgid "Override for an user to indicate IVA rights without uploading a certificate." msgstr "Override voor een gebruiker om IVA-rechten te hebben zonder certificaat." -#: alexia/apps/organization/models.py:62 +#: alexia/apps/organization/models.py:64 msgid "has BHV-certificate" msgstr "heeft BHV-diploma" -#: alexia/apps/organization/models.py:65 +#: alexia/apps/organization/models.py:67 msgid "Designates that this user has a valid, non-expired BHV (Emergency Response Officer) certificate." msgstr "Geeft aan dat deze gebruiker een geldig, niet verlopen BHV-diploma heeft." -#: alexia/apps/organization/models.py:69 +#: alexia/apps/organization/models.py:71 msgid "is foundation manager" msgstr "is stichtingsmananger" -#: alexia/apps/organization/models.py:72 +#: alexia/apps/organization/models.py:74 msgid "Designates that this user is manager of the purchasing foundation." msgstr "Geeft aan dat deze gebruiker manager is van de inkoopstichting." -#: alexia/apps/organization/models.py:79 +#: alexia/apps/organization/models.py:81 msgid "current organization" msgstr "huidige organisatie" -#: alexia/apps/organization/models.py:81 +#: alexia/apps/organization/models.py:83 msgid "iCal identifier" msgstr "iCal identificatie" -#: alexia/apps/organization/models.py:82 +#: alexia/apps/organization/models.py:84 msgid "bartender nickname" msgstr "tappersbijnaam" -#: alexia/apps/organization/models.py:85 +#: alexia/apps/organization/models.py:87 msgid "profile" msgstr "profiel" -#: alexia/apps/organization/models.py:86 +#: alexia/apps/organization/models.py:88 msgid "profiles" msgstr "profielen" -#: alexia/apps/organization/models.py:128 +#: alexia/apps/organization/models.py:132 msgid "slug" msgstr "slug" -#: alexia/apps/organization/models.py:130 +#: alexia/apps/organization/models.py:134 msgid "assigns tenders" msgstr "wijst tappers aan" -#: alexia/apps/organization/models.py:134 +#: alexia/apps/organization/models.py:136 +msgid "writeoff enabled" +msgstr "Afschrijven ingeschakeld" + +#: alexia/apps/organization/models.py:140 msgid "users" msgstr "gebruikers" -#: alexia/apps/organization/models.py:141 +#: alexia/apps/organization/models.py:147 msgid "organizations" msgstr "organisatie" -#: alexia/apps/organization/models.py:164 +#: alexia/apps/organization/models.py:170 msgid "may tend on events" msgstr "mag op borrels tappen" -#: alexia/apps/organization/models.py:165 +#: alexia/apps/organization/models.py:171 msgid "may create and modify events" msgstr "mag borrels aanmaken en wijzigen" -#: alexia/apps/organization/models.py:166 +#: alexia/apps/organization/models.py:172 msgid "may create and modify users" msgstr "mag gebruikers aanmaken en wijzigen" -#: alexia/apps/organization/models.py:171 +#: alexia/apps/organization/models.py:177 msgid "membership" msgstr "lidmaatschap" -#: alexia/apps/organization/models.py:172 +#: alexia/apps/organization/models.py:178 msgid "memberships" msgstr "lidmaatschappen" -#: alexia/apps/organization/models.py:175 +#: alexia/apps/organization/models.py:181 #, python-format msgid "%(user)s of %(organization)s" msgstr "%(user)s van %(organization)s" -#: alexia/apps/organization/models.py:215 alexia/apps/organization/models.py:228 +#: alexia/apps/organization/models.py:221 alexia/apps/organization/models.py:234 msgid "certificate" msgstr "certificaat" -#: alexia/apps/organization/models.py:216 +#: alexia/apps/organization/models.py:222 msgid "uploaded at" msgstr "geĆ¼pload op" -#: alexia/apps/organization/models.py:222 +#: alexia/apps/organization/models.py:228 msgid "approved by" msgstr "goedgekeurd door" -#: alexia/apps/organization/models.py:224 +#: alexia/apps/organization/models.py:230 msgid "approved at" msgstr "goedgekeurd op" -#: alexia/apps/organization/models.py:233 +#: alexia/apps/organization/models.py:239 msgid "IVA certificate of" msgstr "IVA certificaat van" @@ -588,28 +610,28 @@ msgstr "Indicatoren" msgid "Comments" msgstr "Commentaar" -#: alexia/apps/scheduling/forms.py:34 +#: alexia/apps/scheduling/forms.py:35 msgid "The end time is earlier than the start time." msgstr "De einddtijd is eerder dan de begintijd." -#: alexia/apps/scheduling/forms.py:51 +#: alexia/apps/scheduling/forms.py:52 #, python-format msgid "There is already an event in %(location)s." msgstr "Er is al een activiteit in %(location)s." -#: alexia/apps/scheduling/forms.py:59 +#: alexia/apps/scheduling/forms.py:64 msgid "Filter" msgstr "Filter" -#: alexia/apps/scheduling/forms.py:65 +#: alexia/apps/scheduling/forms.py:70 msgid "Locations" msgstr "Ruimtes" -#: alexia/apps/scheduling/forms.py:71 +#: alexia/apps/scheduling/forms.py:76 msgid "Drinks only" msgstr "Alleen borrels" -#: alexia/apps/scheduling/forms.py:72 +#: alexia/apps/scheduling/forms.py:77 msgid "Meetings only" msgstr "Alleen vergaderingen" @@ -641,158 +663,1397 @@ msgstr "mailsjabloon" msgid "mail templates" msgstr "mailsjabonen" -#: alexia/apps/scheduling/models.py:52 -msgid "organizer" -msgstr "organisator" +#: alexia/apps/scheduling/models.py:52 +msgid "organizer" +msgstr "organisator" + +#: alexia/apps/scheduling/models.py:58 +msgid "participants" +msgstr "deelnemers" + +#: alexia/apps/scheduling/models.py:61 +msgid "description" +msgstr "omschrijving" + +#: alexia/apps/scheduling/models.py:62 +msgid "starts at" +msgstr "begin" + +#: alexia/apps/scheduling/models.py:63 +msgid "ends at" +msgstr "einde" + +#: alexia/apps/scheduling/models.py:70 +msgid "tender enrollment closed" +msgstr "tappersinschrijving gesloten" + +#: alexia/apps/scheduling/models.py:73 +msgid "Designates if tenders can sign up for this event." +msgstr "Geeft aan of tappers zich kunnen inschrijven voor deze activiteit." + +#: alexia/apps/scheduling/models.py:80 +msgid "bartenders" +msgstr "tappers" + +#: alexia/apps/scheduling/models.py:86 +msgid "pricegroup" +msgstr "prijsgroep" + +#: alexia/apps/scheduling/models.py:88 +msgid "number of kegs" +msgstr "aantal fusten" + +#: alexia/apps/scheduling/models.py:90 +msgid "option" +msgstr "optie" + +#: alexia/apps/scheduling/models.py:93 +msgid "Designates that this event is not definitive yet." +msgstr "Geeft aan dat deze activiteit nog niet definitief is." + +#: alexia/apps/scheduling/models.py:96 +msgid "tender comments" +msgstr "tappersinstructie" + +#: alexia/apps/scheduling/models.py:98 +msgid "risky" +msgstr "risicoactiviteit" + +#: alexia/apps/scheduling/models.py:101 +msgid "Designates that this event should be marked as risky." +msgstr "Geeft aan of dit een risicoactiviteit betreft." + +#: alexia/apps/scheduling/models.py:108 +msgid "events" +msgstr "activiteiten" + +#: alexia/apps/scheduling/models.py:196 +msgid "Assigned" +msgstr "Toegewezen" + +#: alexia/apps/scheduling/models.py:197 env/lib/python3.9/site-packages/django/forms/widgets.py:712 +msgid "Yes" +msgstr "Ja" + +#: alexia/apps/scheduling/models.py:198 +msgid "Maybe" +msgstr "Misschien" + +#: alexia/apps/scheduling/models.py:199 env/lib/python3.9/site-packages/django/forms/widgets.py:713 +msgid "No" +msgstr "Nee" + +#: alexia/apps/scheduling/models.py:209 +msgid "nature" +msgstr "soort" + +#: alexia/apps/scheduling/models.py:214 +msgid "availability type" +msgstr "beschikbaarheidstype" + +#: alexia/apps/scheduling/models.py:215 +msgid "availability types" +msgstr "beschikbaarheidstypen" + +#: alexia/apps/scheduling/models.py:235 +msgid "bartender" +msgstr "tapper" + +#: alexia/apps/scheduling/models.py:246 +msgid "availability" +msgstr "beschikbaarheid" + +#: alexia/apps/scheduling/models.py:251 +msgid "bartender availability" +msgstr "tapperbeschikbaarheid" + +#: alexia/apps/scheduling/models.py:252 +msgid "bartender availabilities" +msgstr "tapperbeschikbaarheden" + +#: alexia/auth/mixins.py:45 +msgid "AJAX-request required" +msgstr "AJAX-request verplicht" + +#: alexia/auth/mixins.py:56 +msgid "You are not a tender of the selected organization." +msgstr "Je bent geen tapper bij de geselecteerde organisatie!" + +#: alexia/auth/mixins.py:69 +msgid "You are not a planner of the selected organization." +msgstr "Je bent geen planner bij de geselecteerde organisatie!" + +#: alexia/auth/mixins.py:82 +msgid "You are not a manager of the selected organization." +msgstr "Je bent geen manager bij de geselecteerde organisatie!" + +#: alexia/auth/mixins.py:94 +msgid "You are not a bartender or manager of the selected organization." +msgstr "Je bent geen tapper of manager bij de geselecteerde organisatie!" + +#: alexia/auth/mixins.py:108 +msgid "You are not a foundation manager." +msgstr "Je bent geen stichtingsmananger." + +#: alexia/conf/settings/base.py:35 +msgid "Dutch" +msgstr "Nederlands" + +#: alexia/conf/settings/base.py:36 +msgid "English" +msgstr "Engels" + +#: alexia/core/validators.py:6 +msgid "Enter a valid hexadecimal color" +msgstr "Voer een geldige hexadecimale kleur in" + +#: alexia/core/validators.py:17 +msgid "Enter a valid username" +msgstr "Voer een geldige gebruikersnaam in" + +#: alexia/forms/mixins.py:22 templates/consumption/dcf.html:34 templates/registration/register.html:17 +msgid "Save" +msgstr "Opslaan" + +#: env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:129 env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:139 env/lib/python3.9/site-packages/django/forms/fields.py:53 +msgid "This field is required." +msgstr "" + +#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout.py:391 +msgid "i18n text" +msgstr "" + +#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout.py:393 +msgid "i18n legend" +msgstr "" + +#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout_objects.py:134 env/lib/python3.9/site-packages/django/core/validators.py:31 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid value." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/contrib/messages/apps.py:7 +msgid "Messages" +msgstr "" + +#: env/lib/python3.9/site-packages/django/contrib/sitemaps/apps.py:7 +msgid "Site Maps" +msgstr "" + +#: env/lib/python3.9/site-packages/django/contrib/staticfiles/apps.py:9 +msgid "Static Files" +msgstr "" + +#: env/lib/python3.9/site-packages/django/contrib/syndication/apps.py:7 +#, fuzzy +#| msgid "Specification" +msgid "Syndication" +msgstr "Specificatie" + +#: env/lib/python3.9/site-packages/django/core/paginator.py:45 +msgid "That page number is not an integer" +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/paginator.py:47 +msgid "That page number is less than 1" +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/paginator.py:52 +msgid "That page contains no results" +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:102 env/lib/python3.9/site-packages/django/forms/fields.py:658 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid URL." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/core/validators.py:154 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid integer." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/core/validators.py:165 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid email address." +msgstr "Voer een geldige gebruikersnaam in" + +#. Translators: "letters" means latin letters: a-z and A-Z. +#: env/lib/python3.9/site-packages/django/core/validators.py:239 +msgid "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:246 +msgid "Enter a valid 'slug' consisting of Unicode letters, numbers, underscores, or hyphens." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:255 env/lib/python3.9/site-packages/django/core/validators.py:275 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid IPv4 address." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/core/validators.py:260 env/lib/python3.9/site-packages/django/core/validators.py:276 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid IPv6 address." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/core/validators.py:270 env/lib/python3.9/site-packages/django/core/validators.py:274 +msgid "Enter a valid IPv4 or IPv6 address." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:304 +msgid "Enter only digits separated by commas." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:310 +#, python-format +msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:342 +#, python-format +msgid "Ensure this value is less than or equal to %(limit_value)s." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:351 +#, python-format +msgid "Ensure this value is greater than or equal to %(limit_value)s." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:361 +#, python-format +msgid "Ensure this value has at least %(limit_value)d character (it has %(show_value)d)." +msgid_plural "Ensure this value has at least %(limit_value)d characters (it has %(show_value)d)." +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:376 +#, python-format +msgid "Ensure this value has at most %(limit_value)d character (it has %(show_value)d)." +msgid_plural "Ensure this value has at most %(limit_value)d characters (it has %(show_value)d)." +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:395 env/lib/python3.9/site-packages/django/forms/fields.py:290 env/lib/python3.9/site-packages/django/forms/fields.py:325 +msgid "Enter a number." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:397 +#, 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] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:402 +#, 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] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:407 +#, python-format +msgid "Ensure that there are no more than %(max)s digit before the decimal point." +msgid_plural "Ensure that there are no more than %(max)s digits before the decimal point." +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:469 +#, python-format +msgid "File extension '%(extension)s' is not allowed. Allowed extensions are: '%(allowed_extensions)s'." +msgstr "" + +#: env/lib/python3.9/site-packages/django/core/validators.py:521 +msgid "Null characters are not allowed." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/base.py:1162 env/lib/python3.9/site-packages/django/forms/models.py:756 templates/base.html:32 templates/general/about.html:23 templates/general/about.html:34 +msgid "and" +msgstr "en" + +#: env/lib/python3.9/site-packages/django/db/models/base.py:1164 +#, python-format +msgid "%(model_name)s with this %(field_labels)s already exists." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:104 +#, python-format +msgid "Value %(value)r is not a valid choice." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:105 +msgid "This field cannot be null." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:106 +msgid "This field cannot be blank." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:107 +#, python-format +msgid "%(model_name)s with this %(field_label)s already exists." +msgstr "" + +#. Translators: The 'lookup_type' is one of 'date', 'year' or 'month'. +#. Eg: "Title must be unique for pub_date year" +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:111 +#, python-format +msgid "%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:128 +#, python-format +msgid "Field of type: %(field_type)s" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:899 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1766 +msgid "Integer" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:903 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1764 +#, python-format +msgid "'%(value)s' value must be an integer." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:978 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1832 +msgid "Big (8 byte) integer" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:990 +#, python-format +msgid "'%(value)s' value must be either True or False." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:991 +#, python-format +msgid "'%(value)s' value must be either True, False, or None." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:993 +msgid "Boolean (Either True or False)" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1034 +#, python-format +msgid "String (up to %(max_length)s)" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1098 +msgid "Comma-separated integers" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1147 +#, python-format +msgid "'%(value)s' value has an invalid date format. It must be in YYYY-MM-DD format." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1149 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1292 +#, python-format +msgid "'%(value)s' value has the correct format (YYYY-MM-DD) but it is an invalid date." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1152 +msgid "Date (without time)" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1290 +#, python-format +msgid "'%(value)s' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] format." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1294 +#, python-format +msgid "'%(value)s' value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]) but it is an invalid date/time." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1298 +msgid "Date (with time)" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1446 +#, python-format +msgid "'%(value)s' value must be a decimal number." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1448 +#, fuzzy +#| msgid "ID number" +msgid "Decimal number" +msgstr "Identificatienr." + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1587 +#, python-format +msgid "'%(value)s' value has an invalid format. It must be in [DD] [HH:[MM:]]ss[.uuuuuu] format." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1590 +#, fuzzy +#| msgid "Autorization" +msgid "Duration" +msgstr "Autorisatie" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1640 templates/organization/membership_detail.html:48 templates/profile/profile.html:15 +msgid "Email address" +msgstr "E-mailadres" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1663 +#, fuzzy +#| msgid "File format" +msgid "File path" +msgstr "Bestandsformaat" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1729 +#, python-format +msgid "'%(value)s' value must be a float." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1731 +msgid "Floating point number" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1848 +#, fuzzy +#| msgid "Email address" +msgid "IPv4 address" +msgstr "E-mailadres" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1879 +#, fuzzy +#| msgid "Email address" +msgid "IP address" +msgstr "E-mailadres" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1959 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1960 +#, python-format +msgid "'%(value)s' value must be either None, True or False." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1962 +msgid "Boolean (Either True, False or None)" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1997 +msgid "Positive integer" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2010 +msgid "Positive small integer" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2024 +#, python-format +msgid "Slug (up to %(max_length)s)" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2056 +msgid "Small integer" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2063 +msgid "Text" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2091 +#, python-format +msgid "'%(value)s' value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] format." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2093 +#, python-format +msgid "'%(value)s' value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an invalid time." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2096 templates/scheduling/event_bartender.html:14 templates/scheduling/event_list.html:36 +msgid "Time" +msgstr "Tijd" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2222 +msgid "URL" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2244 +#, fuzzy +#| msgid "additional data" +msgid "Raw binary data" +msgstr "aanvullende gegevens" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2294 +#, python-format +msgid "'%(value)s' is not a valid UUID." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2296 +#, fuzzy +#| msgid "iCal identifier" +msgid "Universally unique identifier" +msgstr "iCal identificatie" + +#: env/lib/python3.9/site-packages/django/db/models/fields/files.py:221 +msgid "File" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/files.py:360 +msgid "Image" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:778 +#, python-format +msgid "%(model)s instance with %(field)s %(value)r does not exist." +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:780 +msgid "Foreign Key (type determined by related field)" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1007 +msgid "One-to-one relationship" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1057 +#, python-format +msgid "%(from)s-%(to)s relationship" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1058 +#, python-format +msgid "%(from)s-%(to)s relationships" +msgstr "" + +#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1100 +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 +#: env/lib/python3.9/site-packages/django/forms/boundfield.py:146 +msgid ":?.!" +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:245 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a whole number." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:396 env/lib/python3.9/site-packages/django/forms/fields.py:1126 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid date." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:420 env/lib/python3.9/site-packages/django/forms/fields.py:1127 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid time." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:442 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid date/time." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:471 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid duration." +msgstr "Voer een geldige gebruikersnaam in" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:472 +#, python-brace-format +msgid "The number of days must be between {min_days} and {max_days}." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:532 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:533 +msgid "No file was submitted." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:534 +msgid "The submitted file is empty." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:536 +#, python-format +msgid "Ensure this filename has at most %(max)d character (it has %(length)d)." +msgid_plural "Ensure this filename has at most %(max)d characters (it has %(length)d)." +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:539 +msgid "Please either submit a file or check the clear checkbox, not both." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:600 +msgid "Upload a valid image. The file you uploaded was either not an image or a corrupted image." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:762 env/lib/python3.9/site-packages/django/forms/fields.py:852 env/lib/python3.9/site-packages/django/forms/models.py:1270 +#, python-format +msgid "Select a valid choice. %(value)s is not one of the available choices." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:853 env/lib/python3.9/site-packages/django/forms/fields.py:968 env/lib/python3.9/site-packages/django/forms/models.py:1269 +msgid "Enter a list of values." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:969 +msgid "Enter a complete value." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/fields.py:1185 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter a valid UUID." +msgstr "Voer een geldige gebruikersnaam in" + +#. Translators: This is the default suffix added to form field labels +#: env/lib/python3.9/site-packages/django/forms/forms.py:86 +msgid ":" +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/forms.py:212 +#, python-format +msgid "(Hidden field %(name)s) %(error)s" +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/formsets.py:91 +msgid "ManagementForm data is missing or has been tampered with" +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/formsets.py:338 +#, python-format +msgid "Please submit %d or fewer forms." +msgid_plural "Please submit %d or fewer forms." +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/forms/formsets.py:345 +#, python-format +msgid "Please submit %d or more forms." +msgid_plural "Please submit %d or more forms." +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/forms/formsets.py:371 env/lib/python3.9/site-packages/django/forms/formsets.py:373 +#, fuzzy +#| msgid "Orders" +msgid "Order" +msgstr "Transacties" + +#: env/lib/python3.9/site-packages/django/forms/formsets.py:375 templates/billing/permanentproduct_confirm_delete.html:20 templates/billing/permanentproduct_detail.html:17 templates/billing/permanentproduct_list.html:44 templates/billing/pricegroup_confirm_delete.html:21 templates/billing/pricegroup_detail.html:17 templates/billing/pricegroup_detail.html:59 templates/billing/pricegroup_list.html:35 templates/billing/productgroup_confirm_delete.html:19 templates/billing/productgroup_detail.html:17 templates/billing/productgroup_detail.html:44 templates/billing/productgroup_detail.html:88 templates/billing/productgroup_list.html:35 templates/billing/sellingprice_confirm_delete.html:17 templates/billing/temporaryproduct_confirm_delete.html:14 templates/billing/temporaryproduct_detail.html:17 templates/consumption/partials/unit_consumption.html:15 templates/consumption/partials/weight_consumption.html:19 templates/organization/membership_confirm_delete.html:20 templates/organization/membership_list.html:89 templates/scheduling/event_detail.html:99 +msgid "Delete" +msgstr "Verwijderen" + +#: env/lib/python3.9/site-packages/django/forms/models.py:751 +#, python-format +msgid "Please correct the duplicate data for %(field)s." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/models.py:755 +#, python-format +msgid "Please correct the duplicate data for %(field)s, which must be unique." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/models.py:761 +#, python-format +msgid "Please correct the duplicate data for %(field_name)s which must be unique for the %(lookup)s in %(date_field)s." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/models.py:770 +msgid "Please correct the duplicate values below." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/models.py:1091 +msgid "The inline value did not match the parent instance." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/models.py:1158 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/models.py:1272 +#, python-format +msgid "\"%(pk)s\" is not a valid value." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/utils.py:162 +#, python-format +msgid "%(datetime)s couldn't be interpreted in time zone %(current_timezone)s; it may be ambiguous or it may not exist." +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/widgets.py:395 +msgid "Clear" +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/widgets.py:396 +msgid "Currently" +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/widgets.py:397 +msgid "Change" +msgstr "" + +#: env/lib/python3.9/site-packages/django/forms/widgets.py:711 templates/scheduling/event_detail.html:138 +msgid "Unknown" +msgstr "Onbekend" + +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:788 +msgid "yes,no,maybe" +msgstr "" + +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:817 env/lib/python3.9/site-packages/django/template/defaultfilters.py:834 +#, python-format +msgid "%(size)d byte" +msgid_plural "%(size)d bytes" +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:836 +#, python-format +msgid "%s KB" +msgstr "" + +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:838 +#, python-format +msgid "%s MB" +msgstr "" + +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:840 +#, python-format +msgid "%s GB" +msgstr "" + +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:842 +#, python-format +msgid "%s TB" +msgstr "" + +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:844 +#, python-format +msgid "%s PB" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dateformat.py:62 +msgid "p.m." +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dateformat.py:63 +msgid "a.m." +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dateformat.py:68 +msgid "PM" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dateformat.py:69 +msgid "AM" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dateformat.py:150 +#, fuzzy +#| msgid "Begin weight" +msgid "midnight" +msgstr "Begingewicht" + +#: env/lib/python3.9/site-packages/django/utils/dateformat.py:152 +msgid "noon" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:81 +msgid "Monday" +msgstr "maandag" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:81 +msgid "Tuesday" +msgstr "dinsdag" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:81 +msgid "Wednesday" +msgstr "woensdag" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:82 +msgid "Thursday" +msgstr "donderdag" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:82 +msgid "Friday" +msgstr "vrijdag" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:7 templates/scheduling/event_calendar.html:82 +msgid "Saturday" +msgstr "zaterdag" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:7 templates/scheduling/event_calendar.html:81 +msgid "Sunday" +msgstr "zondag" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:83 +msgid "Mon" +msgstr "ma" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:83 +msgid "Tue" +msgstr "di" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:83 +msgid "Wed" +msgstr "wo" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:84 +msgid "Thu" +msgstr "do" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:84 +msgid "Fri" +msgstr "vr" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:11 templates/scheduling/event_calendar.html:84 +msgid "Sat" +msgstr "za" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:11 templates/scheduling/event_calendar.html:83 +msgid "Sun" +msgstr "zo" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +msgid "January" +msgstr "januari" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +msgid "February" +msgstr "februari" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +msgid "March" +msgstr "maart" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +msgid "April" +msgstr "april" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:76 templates/scheduling/event_calendar.html:79 +msgid "May" +msgstr "mei" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:76 +msgid "June" +msgstr "juni" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:76 +msgid "July" +msgstr "juli" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:76 +msgid "August" +msgstr "augustus" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:77 +msgid "September" +msgstr "september" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:77 +msgid "October" +msgstr "oktober" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:77 +msgid "November" +msgstr "november" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:16 templates/scheduling/event_calendar.html:77 +msgid "December" +msgstr "december" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:19 +#, fuzzy +#| msgid "and" +msgid "jan" +msgstr "en" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:19 +msgid "feb" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:19 +#, fuzzy +#| msgid "Summary" +msgid "mar" +msgstr "Samenvatting" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:19 +msgid "apr" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:19 +#, fuzzy +#| msgid "May" +msgid "may" +msgstr "mei" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:19 +#, fuzzy +#| msgid "Sun" +msgid "jun" +msgstr "zo" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:20 +msgid "jul" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:20 +msgid "aug" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:20 +msgid "sep" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:20 +#, fuzzy +#| msgid "product" +msgid "oct" +msgstr "product" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:20 +msgid "nov" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:20 +msgid "dec" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:23 +#, fuzzy +#| msgid "Jan." +msgctxt "abbrev. month" +msgid "Jan." +msgstr "jan" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:24 +#, fuzzy +#| msgid "Feb." +msgctxt "abbrev. month" +msgid "Feb." +msgstr "feb" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:25 +#, fuzzy +#| msgid "March" +msgctxt "abbrev. month" +msgid "March" +msgstr "maart" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:26 +#, fuzzy +#| msgid "April" +msgctxt "abbrev. month" +msgid "April" +msgstr "april" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:27 +#, fuzzy +#| msgid "May" +msgctxt "abbrev. month" +msgid "May" +msgstr "mei" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:28 +#, fuzzy +#| msgid "June" +msgctxt "abbrev. month" +msgid "June" +msgstr "juni" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:29 +#, fuzzy +#| msgid "July" +msgctxt "abbrev. month" +msgid "July" +msgstr "juli" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:30 +#, fuzzy +#| msgid "Aug." +msgctxt "abbrev. month" +msgid "Aug." +msgstr "aug" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:31 +msgctxt "abbrev. month" +msgid "Sept." +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:32 +#, fuzzy +#| msgid "Oct." +msgctxt "abbrev. month" +msgid "Oct." +msgstr "oct" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:33 +#, fuzzy +#| msgid "Nov." +msgctxt "abbrev. month" +msgid "Nov." +msgstr "nov" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:34 +#, fuzzy +#| msgid "Dec." +msgctxt "abbrev. month" +msgid "Dec." +msgstr "dec" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:37 +#, fuzzy +#| msgid "January" +msgctxt "alt. month" +msgid "January" +msgstr "januari" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:38 +#, fuzzy +#| msgid "February" +msgctxt "alt. month" +msgid "February" +msgstr "februari" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:39 +#, fuzzy +#| msgid "March" +msgctxt "alt. month" +msgid "March" +msgstr "maart" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:40 +#, fuzzy +#| msgid "April" +msgctxt "alt. month" +msgid "April" +msgstr "april" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:41 +#, fuzzy +#| msgid "May" +msgctxt "alt. month" +msgid "May" +msgstr "mei" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:42 +#, fuzzy +#| msgid "June" +msgctxt "alt. month" +msgid "June" +msgstr "juni" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:43 +#, fuzzy +#| msgid "July" +msgctxt "alt. month" +msgid "July" +msgstr "juli" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:44 +#, fuzzy +#| msgid "August" +msgctxt "alt. month" +msgid "August" +msgstr "augustus" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:45 +#, fuzzy +#| msgid "September" +msgctxt "alt. month" +msgid "September" +msgstr "september" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:46 +#, fuzzy +#| msgid "October" +msgctxt "alt. month" +msgid "October" +msgstr "oktober" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:47 +#, fuzzy +#| msgid "November" +msgctxt "alt. month" +msgid "November" +msgstr "november" + +#: env/lib/python3.9/site-packages/django/utils/dates.py:48 +#, fuzzy +#| msgid "December" +msgctxt "alt. month" +msgid "December" +msgstr "december" + +#: env/lib/python3.9/site-packages/django/utils/ipv6.py:8 +msgid "This is not a valid IPv6 address." +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/text.py:67 +#, python-format +msgctxt "String to return when truncating text" +msgid "%(truncated_text)sā€¦" +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/text.py:233 +msgid "or" +msgstr "" + +#. Translators: This string is used as a separator between list elements +#: env/lib/python3.9/site-packages/django/utils/text.py:252 env/lib/python3.9/site-packages/django/utils/timesince.py:83 +msgid ", " +msgstr "" + +#: env/lib/python3.9/site-packages/django/utils/timesince.py:9 +#, python-format +msgid "%d year" +msgid_plural "%d years" +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/utils/timesince.py:10 +#, fuzzy, python-format +#| msgid "month" +msgid "%d month" +msgid_plural "%d months" +msgstr[0] "maand" +msgstr[1] "maand" + +#: env/lib/python3.9/site-packages/django/utils/timesince.py:11 +#, fuzzy, python-format +#| msgid "week" +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "week" +msgstr[1] "week" + +#: env/lib/python3.9/site-packages/django/utils/timesince.py:12 +#, python-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/utils/timesince.py:13 +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/utils/timesince.py:14 +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#: env/lib/python3.9/site-packages/django/utils/timesince.py:72 +msgid "0 minutes" +msgstr "" + +#: env/lib/python3.9/site-packages/django/views/csrf.py:110 +msgid "Forbidden" +msgstr "" + +#: env/lib/python3.9/site-packages/django/views/csrf.py:111 +msgid "CSRF verification failed. Request aborted." +msgstr "" + +#: env/lib/python3.9/site-packages/django/views/csrf.py:115 +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 required for security reasons, to ensure that your browser is not being hijacked by third parties." +msgstr "" + +#: env/lib/python3.9/site-packages/django/views/csrf.py:120 +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-origin' requests." +msgstr "" + +#: env/lib/python3.9/site-packages/django/views/csrf.py:124 +msgid "If you are using the tag or including the 'Referrer-Policy: no-referrer' header, please remove them. The CSRF protection requires the 'Referer' header to do strict referer checking. If you're concerned about privacy, use alternatives like for links to third-party sites." +msgstr "" + +#: env/lib/python3.9/site-packages/django/views/csrf.py:132 +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 that your browser is not being hijacked by third parties." +msgstr "" -#: alexia/apps/scheduling/models.py:58 -msgid "participants" -msgstr "deelnemers" +#: env/lib/python3.9/site-packages/django/views/csrf.py:137 +msgid "If you have configured your browser to disable cookies, please re-enable them, at least for this site, or for 'same-origin' requests." +msgstr "" -#: alexia/apps/scheduling/models.py:61 -msgid "description" -msgstr "omschrijving" +#: env/lib/python3.9/site-packages/django/views/csrf.py:142 +msgid "More information is available with DEBUG=True." +msgstr "" -#: alexia/apps/scheduling/models.py:62 -msgid "starts at" -msgstr "begin" +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:41 +msgid "No year specified" +msgstr "" -#: alexia/apps/scheduling/models.py:63 -msgid "ends at" -msgstr "einde" +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:61 env/lib/python3.9/site-packages/django/views/generic/dates.py:111 env/lib/python3.9/site-packages/django/views/generic/dates.py:208 +msgid "Date out of range" +msgstr "" -#: alexia/apps/scheduling/models.py:70 -msgid "tender enrollment closed" -msgstr "tappersinschrijving gesloten" +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:90 +msgid "No month specified" +msgstr "" -#: alexia/apps/scheduling/models.py:73 -msgid "Designates if tenders can sign up for this event." -msgstr "Geeft aan of tappers zich kunnen inschrijven voor deze activiteit." +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:142 +msgid "No day specified" +msgstr "" -#: alexia/apps/scheduling/models.py:80 -msgid "bartenders" -msgstr "tappers" +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:188 +msgid "No week specified" +msgstr "" -#: alexia/apps/scheduling/models.py:86 -msgid "pricegroup" -msgstr "prijsgroep" +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:338 env/lib/python3.9/site-packages/django/views/generic/dates.py:367 +#, python-format +msgid "No %(verbose_name_plural)s available" +msgstr "" -#: alexia/apps/scheduling/models.py:88 -msgid "number of kegs" -msgstr "aantal fusten" +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:589 +#, python-format +msgid "Future %(verbose_name_plural)s not available because %(class_name)s.allow_future is False." +msgstr "" -#: alexia/apps/scheduling/models.py:90 -msgid "option" -msgstr "optie" +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:623 +#, python-format +msgid "Invalid date string '%(datestr)s' given format '%(format)s'" +msgstr "" -#: alexia/apps/scheduling/models.py:93 -msgid "Designates that this event is not definitive yet." -msgstr "Geeft aan dat deze activiteit nog niet definitief is." +#: env/lib/python3.9/site-packages/django/views/generic/detail.py:54 +#, python-format +msgid "No %(verbose_name)s found matching the query" +msgstr "" -#: alexia/apps/scheduling/models.py:96 -msgid "tender comments" -msgstr "tappersinstructie" +#: env/lib/python3.9/site-packages/django/views/generic/list.py:67 +msgid "Page is not 'last', nor can it be converted to an int." +msgstr "" -#: alexia/apps/scheduling/models.py:98 -msgid "risky" -msgstr "risicoactiviteit" +#: env/lib/python3.9/site-packages/django/views/generic/list.py:72 +#, python-format +msgid "Invalid page (%(page_number)s): %(message)s" +msgstr "" -#: alexia/apps/scheduling/models.py:101 -msgid "Designates that this event should be marked as risky." -msgstr "Geeft aan of dit een risicoactiviteit betreft." +#: env/lib/python3.9/site-packages/django/views/generic/list.py:154 +#, python-format +msgid "Empty list and '%(class_name)s.allow_empty' is False." +msgstr "" -#: alexia/apps/scheduling/models.py:108 -msgid "events" -msgstr "activiteiten" +#: env/lib/python3.9/site-packages/django/views/static.py:40 +msgid "Directory indexes are not allowed here." +msgstr "" -#: alexia/apps/scheduling/models.py:196 -msgid "Assigned" -msgstr "Toegewezen" +#: env/lib/python3.9/site-packages/django/views/static.py:42 +#, python-format +msgid "\"%(path)s\" does not exist" +msgstr "" -#: alexia/apps/scheduling/models.py:197 -msgid "Yes" -msgstr "Ja" +#: env/lib/python3.9/site-packages/django/views/static.py:80 +#, python-format +msgid "Index of %(directory)s" +msgstr "" -#: alexia/apps/scheduling/models.py:198 -msgid "Maybe" -msgstr "Misschien" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:6 +msgid "Django: the Web framework for perfectionists with deadlines." +msgstr "" -#: alexia/apps/scheduling/models.py:199 -msgid "No" -msgstr "Nee" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:345 +#, python-format +msgid "View release notes for Django %(version)s" +msgstr "" -#: alexia/apps/scheduling/models.py:209 -msgid "nature" -msgstr "soort" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:367 +msgid "The install worked successfully! Congratulations!" +msgstr "" -#: alexia/apps/scheduling/models.py:214 -msgid "availability type" -msgstr "beschikbaarheidstype" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:368 +#, python-format +msgid "You are seeing this page because DEBUG=True is in your settings file and you have not configured any URLs." +msgstr "" -#: alexia/apps/scheduling/models.py:215 -msgid "availability types" -msgstr "beschikbaarheidstypen" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:383 +msgid "Django Documentation" +msgstr "" -#: alexia/apps/scheduling/models.py:235 -msgid "bartender" -msgstr "tapper" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:384 +msgid "Topics, references, & how-to's" +msgstr "" -#: alexia/apps/scheduling/models.py:246 -msgid "availability" -msgstr "beschikbaarheid" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:395 +msgid "Tutorial: A Polling App" +msgstr "" -#: alexia/apps/scheduling/models.py:251 -msgid "bartender availability" -msgstr "tapperbeschikbaarheid" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:396 +msgid "Get started with Django" +msgstr "" -#: alexia/apps/scheduling/models.py:252 -msgid "bartender availabilities" -msgstr "tapperbeschikbaarheden" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:407 +msgid "Django Community" +msgstr "" -#: alexia/auth/mixins.py:45 -msgid "AJAX-request required" -msgstr "AJAX-request verplicht" +#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:408 +msgid "Connect, get help, or contribute" +msgstr "" -#: alexia/auth/mixins.py:56 -msgid "You are not a tender of the selected organization." -msgstr "Je bent geen tapper bij de geselecteerde organisatie!" +#: env/lib/python3.9/site-packages/jsonfield/fields.py:42 env/lib/python3.9/site-packages/jsonfield/forms.py:22 +#, fuzzy +#| msgid "Enter a valid username" +msgid "Enter valid JSON." +msgstr "Voer een geldige gebruikersnaam in" -#: alexia/auth/mixins.py:69 -msgid "You are not a planner of the selected organization." -msgstr "Je bent geen planner bij de geselecteerde organisatie!" +#: env/lib/python3.9/site-packages/jsonfield/forms.py:15 +#, python-format +msgid "\"%(value)s\" value must be valid JSON." +msgstr "" -#: alexia/auth/mixins.py:82 -msgid "You are not a manager of the selected organization." -msgstr "Je bent geen manager bij de geselecteerde organisatie!" +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:3 +msgid "You're lazy..." +msgstr "" -#: alexia/auth/mixins.py:94 -#| msgid "You are not a manager of the selected organization." -msgid "You are not a bartender or manager of the selected organization." -msgstr "Je bent geen tapper of manager bij de geselecteerde organisatie!" +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:61 +msgid "Parse error." +msgstr "" -#: alexia/auth/mixins.py:108 -msgid "You are not a foundation manager." -msgstr "Je bent geen stichtingsmananger." +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:67 +msgid "Invalid Request." +msgstr "" -#: alexia/conf/settings/base.py:38 -msgid "Dutch" -msgstr "Nederlands" +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:74 +#, fuzzy +#| msgid "Not found" +msgid "Method not found." +msgstr "Niet gevonden" -#: alexia/conf/settings/base.py:39 -msgid "English" -msgstr "Engels" +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:81 +msgid "Invalid params." +msgstr "" -#: alexia/core/validators.py:6 -msgid "Enter a valid hexadecimal color" -msgstr "Voer een geldige hexadecimale kleur in" +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:87 +msgid "Internal error." +msgstr "" -#: alexia/core/validators.py:17 -msgid "Enter a valid username" -msgstr "Voer een geldige gebruikersnaam in" +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:96 +msgid "JSON-RPC requests must be POST" +msgstr "" -#: alexia/forms/mixins.py:22 templates/consumption/dcf.html:34 templates/registration/register.html:17 -msgid "Save" -msgstr "Opslaan" +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:102 +msgid "Invalid login credentials" +msgstr "" + +#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:109 +msgid "Error missed by other exceptions" +msgstr "" #: templates/403.html:3 templates/403.html:7 msgid "Access denied" @@ -822,10 +2083,6 @@ msgstr "Maak gebruiker" msgid "Event management system Alexia" msgstr "Borrelbeheersysteem Alexia" -#: templates/base.html:32 templates/general/about.html:23 templates/general/about.html:34 -msgid "and" -msgstr "en" - #: templates/base.html:33 msgid "individual contributors" msgstr "individuele bijdragers" @@ -906,15 +2163,15 @@ msgstr "Help" msgid "No organization" msgstr "Geen organisatie" -#: templates/base_app.html:123 +#: templates/base_app.html:125 msgid "My profile" msgstr "Mijn profiel" -#: templates/base_app.html:127 +#: templates/base_app.html:129 msgid "Log out" msgstr "Uitloggen" -#: templates/base_app.html:133 +#: templates/base_app.html:135 msgid "Login with UTwente" msgstr "Inloggen met UTwente" @@ -1046,10 +2303,6 @@ msgstr "Product verwijderen" msgid "Are you sure you want to delete %(product)s from %(productgroup)s?" msgstr "Weet je zeker dat je %(product)s wil verwijderen van %(productgroup)s?" -#: templates/billing/permanentproduct_confirm_delete.html:20 templates/billing/permanentproduct_detail.html:17 templates/billing/permanentproduct_list.html:44 templates/billing/pricegroup_confirm_delete.html:21 templates/billing/pricegroup_detail.html:17 templates/billing/pricegroup_detail.html:59 templates/billing/pricegroup_list.html:35 templates/billing/productgroup_confirm_delete.html:19 templates/billing/productgroup_detail.html:17 templates/billing/productgroup_detail.html:44 templates/billing/productgroup_detail.html:88 templates/billing/productgroup_list.html:35 templates/billing/sellingprice_confirm_delete.html:17 templates/billing/temporaryproduct_confirm_delete.html:14 templates/billing/temporaryproduct_detail.html:17 templates/consumption/partials/unit_consumption.html:15 templates/consumption/partials/weight_consumption.html:19 templates/organization/membership_confirm_delete.html:20 templates/organization/membership_list.html:89 templates/scheduling/event_detail.html:99 -msgid "Delete" -msgstr "Verwijderen" - #: templates/billing/permanentproduct_detail.html:13 templates/billing/permanentproduct_list.html:40 templates/billing/pricegroup_detail.html:13 templates/billing/pricegroup_detail.html:55 templates/billing/pricegroup_list.html:31 templates/billing/productgroup_detail.html:13 templates/billing/productgroup_detail.html:40 templates/billing/productgroup_detail.html:84 templates/billing/productgroup_list.html:31 templates/billing/temporaryproduct_detail.html:13 templates/consumption/consumptionform_detail.html:24 templates/consumption/consumptionproduct_list.html:47 templates/consumption/consumptionproduct_list.html:87 templates/organization/membership_list.html:85 templates/scheduling/availability_list.html:35 templates/scheduling/event_detail.html:25 templates/scheduling/event_detail.html:95 templates/scheduling/mailtemplate_detail.html:13 templates/scheduling/mailtemplate_list.html:30 msgid "Modify" msgstr "Wijzigen" @@ -1437,10 +2690,6 @@ msgstr "Aantal keer getapt" msgid "User details" msgstr "Gebruikersgegevens" -#: templates/organization/membership_detail.html:48 templates/profile/profile.html:15 -msgid "Email address" -msgstr "E-mailadres" - #: templates/organization/membership_detail.html:57 msgid "Times tended last year" msgstr "Getapt afgelopen jaar" @@ -1716,10 +2965,6 @@ msgstr "Soort" msgid "No availabilities defined." msgstr "Geen beschikbaarheden gedefinieerd." -#: templates/scheduling/event_bartender.html:14 templates/scheduling/event_list.html:36 -msgid "Time" -msgstr "Tijd" - #: templates/scheduling/event_bartender.html:17 templates/scheduling/event_calendar.html:27 templates/scheduling/event_detail.html:126 templates/scheduling/event_list.html:42 msgid "Bartenders" msgstr "Tappers" @@ -1760,54 +3005,6 @@ msgstr "maand" msgid "week" msgstr "week" -#: templates/scheduling/event_calendar.html:75 -msgid "January" -msgstr "januari" - -#: templates/scheduling/event_calendar.html:75 -msgid "February" -msgstr "februari" - -#: templates/scheduling/event_calendar.html:75 -msgid "March" -msgstr "maart" - -#: templates/scheduling/event_calendar.html:75 -msgid "April" -msgstr "april" - -#: templates/scheduling/event_calendar.html:76 templates/scheduling/event_calendar.html:79 -msgid "May" -msgstr "mei" - -#: templates/scheduling/event_calendar.html:76 -msgid "June" -msgstr "juni" - -#: templates/scheduling/event_calendar.html:76 -msgid "July" -msgstr "juli" - -#: templates/scheduling/event_calendar.html:76 -msgid "August" -msgstr "augustus" - -#: templates/scheduling/event_calendar.html:77 -msgid "September" -msgstr "september" - -#: templates/scheduling/event_calendar.html:77 -msgid "October" -msgstr "oktober" - -#: templates/scheduling/event_calendar.html:77 -msgid "November" -msgstr "november" - -#: templates/scheduling/event_calendar.html:77 -msgid "December" -msgstr "december" - #: templates/scheduling/event_calendar.html:78 msgid "Jan." msgstr "jan" @@ -1852,62 +3049,6 @@ msgstr "nov" msgid "Dec." msgstr "dec" -#: templates/scheduling/event_calendar.html:81 -msgid "Sunday" -msgstr "zondag" - -#: templates/scheduling/event_calendar.html:81 -msgid "Monday" -msgstr "maandag" - -#: templates/scheduling/event_calendar.html:81 -msgid "Tuesday" -msgstr "dinsdag" - -#: templates/scheduling/event_calendar.html:81 -msgid "Wednesday" -msgstr "woensdag" - -#: templates/scheduling/event_calendar.html:82 -msgid "Thursday" -msgstr "donderdag" - -#: templates/scheduling/event_calendar.html:82 -msgid "Friday" -msgstr "vrijdag" - -#: templates/scheduling/event_calendar.html:82 -msgid "Saturday" -msgstr "zaterdag" - -#: templates/scheduling/event_calendar.html:83 -msgid "Sun" -msgstr "zo" - -#: templates/scheduling/event_calendar.html:83 -msgid "Mon" -msgstr "ma" - -#: templates/scheduling/event_calendar.html:83 -msgid "Tue" -msgstr "di" - -#: templates/scheduling/event_calendar.html:83 -msgid "Wed" -msgstr "wo" - -#: templates/scheduling/event_calendar.html:84 -msgid "Thu" -msgstr "do" - -#: templates/scheduling/event_calendar.html:84 -msgid "Fri" -msgstr "vr" - -#: templates/scheduling/event_calendar.html:84 -msgid "Sat" -msgstr "za" - #: templates/scheduling/event_calendar.html:85 msgid "Week" msgstr "Week" @@ -1965,10 +3106,6 @@ msgstr "Geen tijdelijke producten gedefinieerd." msgid "Never" msgstr "Nooit" -#: templates/scheduling/event_detail.html:138 -msgid "Unknown" -msgstr "Onbekend" - #: templates/scheduling/event_form.html:5 templates/scheduling/event_form.html:15 msgid "Edit event" msgstr "Activiteit bewerken" @@ -2043,3 +3180,6 @@ msgstr "Mailsjablonen van %(organization)s" #: templates/scheduling/mailtemplate_list.html:36 msgid "No mail templates defined." msgstr "Geen mailsjablonen gedefinieerd." + +#~ msgid "Logging in failed, please try again." +#~ msgstr "Het inloggen is mislukt, probeer het alsjeblieft opnieuw." diff --git a/templates/billing/juliana.html b/templates/billing/juliana.html index 1f1d8f4..431bbc7 100644 --- a/templates/billing/juliana.html +++ b/templates/billing/juliana.html @@ -29,6 +29,7 @@ }, androidapp: {{ androidapp|yesno:"true,false" }}, countdown: {{ countdown }}, + writeoff: {{ writeoff|yesno:"true,false" }} }; @@ -72,8 +73,13 @@ data-command="cancel">Annuleer + {% if writeoff %} + + {% else %} + {% endif %}
@@ -191,6 +197,10 @@

Error

+ {% if writeoff %} +
+
+ {% endif %} {% compress js %} {# Vendor #} From eb716372f7405656370a4ebba1b4a951a219e0c3 Mon Sep 17 00:00:00 2001 From: Daniel Jonker Date: Thu, 26 Sep 2024 20:09:44 +0200 Subject: [PATCH 2/5] Ongoing --- alexia/api/v1/methods/juliana.py | 50 +++++++++++++++- alexia/apps/billing/admin.py | 19 +++++- ...category_writeofforder_writeoffpurchase.py | 6 +- .../0020_writeoffcategory_is_active.py | 18 ------ alexia/apps/billing/models.py | 17 +++--- alexia/apps/billing/views.py | 5 +- .../migrations/0021_auto_20240926_1621.py | 17 ++++++ assets/js/juliana.js | 60 ++++++++++++++----- templates/billing/juliana.html | 40 +++++++++++-- .../consumption/consumptionform_detail.html | 13 ++-- templates/scheduling/event_detail.html | 13 ++-- 11 files changed, 195 insertions(+), 63 deletions(-) delete mode 100644 alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py create mode 100644 alexia/apps/scheduling/migrations/0021_auto_20240926_1621.py diff --git a/alexia/api/v1/methods/juliana.py b/alexia/api/v1/methods/juliana.py index c219da6..c8ed11c 100644 --- a/alexia/api/v1/methods/juliana.py +++ b/alexia/api/v1/methods/juliana.py @@ -10,7 +10,7 @@ ForbiddenError, InvalidParamsError, ObjectNotFoundError, ) from alexia.apps.billing.models import ( - Authorization, Order, Product, Purchase, RfidCard, + Authorization, Order, Product, Purchase, RfidCard, WriteoffCategory, WriteOffOrder, WriteOffPurchase ) from alexia.apps.scheduling.models import Event @@ -186,3 +186,51 @@ def juliana_user_check(request, event_id, user_id): return int(order_sum * 100) else: return 0 + +@jsonrpc_method('juliana.writeoff.save(Number,Number,Array) -> Nil', site=api_v1_site, authenticated=True) +@transaction.atomic +def juliana_writeoff_save(request, event_id, writeoff_id, purchases): + """Saves a writeoff order in the Database""" + event = _get_validate_event(request, event_id) + + try: + writeoff_cat = WriteoffCategory.objects.get(id=writeoff_id) + except WriteoffCategory.DoesNotExist: + raise InvalidParamsError('Writeoff Category %s not found' % writeoff_id) + + order = WriteOffOrder(event=event, added_by=request.user, writeoff_category=writeoff_cat) + order.save() + + for p in purchases: + try: + product = Product.objects.get(pk=p['product']) + except Product.DoesNotExist: + raise InvalidParamsError('Product %s not found' % p['product']) + + if product.is_permanent: + product = product.permanentproduct + if product.organization != event.organizer \ + or product.productgroup not in event.pricegroup.productgroups.all(): + raise InvalidParamsError('Product %s is not available for this event' % p['product']) + elif product.is_temporary: + product = product.temporaryproduct + if event != product.event: + raise InvalidParamsError('Product %s is not available for this event' % p['product']) + else: + raise OtherError('Product %s is broken' % p['product']) + + amount = p['amount'] + + if p['amount'] <= 0: + raise InvalidParamsError('Zero or negative amount not allowed') + + price = amount * product.get_price(event) + + if price != p['price'] / Decimal(100): + raise InvalidParamsError('Price for product %s is incorrect' % p['product']) + + purchase = WriteOffPurchase(order=order, product=product.name, amount=amount, price=price) + purchase.save() + + order.save(force_update=True) # ensure order.amount is correct + return True \ No newline at end of file diff --git a/alexia/apps/billing/admin.py b/alexia/apps/billing/admin.py index 61ffb34..da2990c 100644 --- a/alexia/apps/billing/admin.py +++ b/alexia/apps/billing/admin.py @@ -2,7 +2,7 @@ from .models import ( Authorization, Order, PermanentProduct, PriceGroup, ProductGroup, Purchase, - RfidCard, SellingPrice, WriteoffCategory, + RfidCard, SellingPrice, WriteOffOrder, ) @@ -48,6 +48,23 @@ def has_delete_permission(self, request, obj=None): def save_formset(self, request, form, formset, change): formset.save() form.instance.save() # Updates Order.amount + +@admin.register(WriteOffOrder) +class WriteoffOrderAdmin(admin.ModelAdmin): + date_hierarchy = 'placed_at' + list_display = ['event', 'placed_at', 'amount'] + raw_id_fields = ['added_by', 'event'] + readonly_fields = ['placed_at'] + + def get_readonly_fields(self, request, obj=None): + return self.readonly_fields + + def has_delete_permission(self, request, obj=None): + return False + + def save_formset(self, request, form, formset, change): + formset.save() + form.instance.save() # Updates Order.amount class SellingPriceInline(admin.TabularInline): diff --git a/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py b/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py index c8c9709..212b848 100644 --- a/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py +++ b/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.28 on 2024-09-16 20:27 +# Generated by Django 2.2.28 on 2024-09-26 14:28 import alexia.core.validators from django.conf import settings @@ -10,6 +10,7 @@ class Migration(migrations.Migration): dependencies = [ + ('scheduling', '0021_auto_20240926_1621'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('organization', '0025_organization_writeoff_enabled'), ('billing', '0018_product_shortcut'), @@ -23,6 +24,7 @@ class Migration(migrations.Migration): ('name', models.CharField(max_length=20, verbose_name='name')), ('description', models.CharField(max_length=50, verbose_name='short description')), ('color', models.CharField(blank=True, max_length=6, validators=[alexia.core.validators.validate_color], verbose_name='color')), + ('is_active', models.BooleanField(default=False, verbose_name='active')), ('organization', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organization.Organization', verbose_name='organization')), ], ), @@ -34,6 +36,7 @@ class Migration(migrations.Migration): ('amount', models.DecimalField(decimal_places=2, max_digits=15, verbose_name='amount')), ('added_by', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL, verbose_name='added by')), ('event', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='writeoff_orders', to='scheduling.Event', verbose_name='event')), + ('writeoff_category', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='billing.WriteoffCategory', verbose_name='writeoff category')), ], options={ 'verbose_name': 'order', @@ -49,7 +52,6 @@ class Migration(migrations.Migration): ('amount', models.PositiveSmallIntegerField(verbose_name='amount')), ('price', models.DecimalField(decimal_places=2, max_digits=15, verbose_name='price')), ('order', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='writeoff_purchases', to='billing.WriteOffOrder', verbose_name='order')), - ('writeoff_category', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='billing.WriteoffCategory', verbose_name='writeoff category')), ], options={ 'verbose_name': 'purchase', diff --git a/alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py b/alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py deleted file mode 100644 index 192a207..0000000 --- a/alexia/apps/billing/migrations/0020_writeoffcategory_is_active.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 2.2.28 on 2024-09-16 21:29 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('billing', '0019_writeoffcategory_writeofforder_writeoffpurchase'), - ] - - operations = [ - migrations.AddField( - model_name='writeoffcategory', - name='is_active', - field=models.BooleanField(default=False, verbose_name='active'), - ), - ] diff --git a/alexia/apps/billing/models.py b/alexia/apps/billing/models.py index 49e0455..02c317d 100644 --- a/alexia/apps/billing/models.py +++ b/alexia/apps/billing/models.py @@ -356,10 +356,16 @@ class WriteOffOrder(models.Model): ) amount = models.DecimalField(_('amount'), max_digits=15, decimal_places=2) + writeoff_category = models.ForeignKey( + WriteoffCategory, + on_delete=models.PROTECT, # We cannot delete purchases + verbose_name=_('writeoff category') + ) + class Meta: ordering = ['-placed_at'] - verbose_name = _('order') - verbose_name_plural = _('orders') + verbose_name = _('writeoff order') + verbose_name_plural = _('writeoff orders') def __str__(self): return _('{time} on {event}').format( @@ -373,7 +379,7 @@ def save(self, *args, **kwargs): def get_price(self): amount = Decimal('0.0') - for purchase in self.purchases.all(): + for purchase in self.writeoff_purchases.all(): amount += purchase.price return amount @@ -384,11 +390,6 @@ class WriteOffPurchase(models.Model): product = models.CharField(_('product'), max_length=32) amount = models.PositiveSmallIntegerField(_('amount')) price = models.DecimalField(_('price'), max_digits=15, decimal_places=2) - writeoff_category = models.ForeignKey( - WriteoffCategory, - on_delete=models.PROTECT, # We cannot delete purchases - verbose_name=_('writeoff category') - ) class Meta: verbose_name = _('purchase') diff --git a/alexia/apps/billing/views.py b/alexia/apps/billing/views.py index 815bf8a..fd8aca3 100644 --- a/alexia/apps/billing/views.py +++ b/alexia/apps/billing/views.py @@ -33,7 +33,7 @@ OrganizationFilterMixin, OrganizationFormMixin, ) -from .models import Order, Purchase +from .models import Order, Purchase, WriteoffCategory class JulianaView(TenderRequiredMixin, DetailView): @@ -57,7 +57,8 @@ def get_context_data(self, **kwargs): 'products': self.get_product_list(), 'countdown': settings.JULIANA_COUNTDOWN if hasattr(settings, 'JULIANA_COUNTDOWN') else 5, 'androidapp': self.request.META.get('HTTP_X_REQUESTED_WITH') == 'net.inter_actief.juliananfc', - 'writeoff': self.object.organizer.writeoff_enabled + 'writeoff': self.object.organizer.writeoff_enabled, + 'writeoff_categories' : WriteoffCategory.objects.filter(organization=self.object.organizer, is_active=True) }) return context diff --git a/alexia/apps/scheduling/migrations/0021_auto_20240926_1621.py b/alexia/apps/scheduling/migrations/0021_auto_20240926_1621.py new file mode 100644 index 0000000..4d169bf --- /dev/null +++ b/alexia/apps/scheduling/migrations/0021_auto_20240926_1621.py @@ -0,0 +1,17 @@ +# Generated by Django 2.2.28 on 2024-09-26 14:21 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('scheduling', '0020_availability_position'), + ] + + operations = [ + migrations.AlterModelOptions( + name='availability', + options={'ordering': ['position'], 'verbose_name': 'availability type', 'verbose_name_plural': 'availability types'}, + ), + ] diff --git a/assets/js/juliana.js b/assets/js/juliana.js index 127b288..23b28d7 100644 --- a/assets/js/juliana.js +++ b/assets/js/juliana.js @@ -30,7 +30,7 @@ State = { ERROR: 2, CHECK: 3, MESSAGE: 4, - WRITEOFF: 5, + WRITEOFF: 5, current: this.SALES, toggleTo: function (newState, argument) { @@ -88,14 +88,18 @@ State = { $('#current-message').html(argument); $('#message-screen').show(); break; - case this.WRITEOFF: - this.current = this.WRITEOFF; - this._hideAllScreens(); - console.log('Changing to WRITEOFF'); - - // HTML Magic and rendering - // argument is the Receipt object - break; + case this.WRITEOFF: + this.current = this.WRITEOFF; + + // Do not hide all screens, since we want to show the total + // (to know how much we're writing off) + $("#keypad").hide(); + $("#products").hide(); + + // HTML Magic and rendering + // argument is the Receipt object + $('#writeoff-screen').show(); + break; default: console.log('Error: no known state'); break; @@ -110,6 +114,11 @@ State = { $('#cashier-screen').hide(); $('#error-screen').hide(); $('#message-screen').hide(); + $('#writeoff-screen').hide(); + + // Show possible hidden screens in case of writeoff + $("#keypad").show(); + $("#products").show(); } }; @@ -295,7 +304,6 @@ Receipt = { clearInterval(Receipt.counterInterval); Receipt.confirmPay(rpcRequest); - }, confirmPay: function (rpcRequest) { IAjax.request(rpcRequest, function (result) { @@ -312,9 +320,27 @@ Receipt = { var amount = Math.ceil(sum / 10) * 10; State.toggleTo(State.MESSAGE, 'Dat wordt dan € ' + (amount/100).toFixed(2)); }, - writeoff: () => { - State.toggleTo(State.WRITEOFF, this); - } + writeoffNow: function (categoryId) { + let rpcRequest = { + jsonrpc: '2.0', + method: 'juliana.writeoff.save', + params: { + event_id: Settings.event_id, + writeoff_id: categoryId, + purchases: Receipt.receipt, + }, + id: 2 // id used for? + } + + // writing off + IAjax.request(rpcRequest, function (result) { + if (result.error) { + State.toggleTo(State.ERROR, 'Error with writeoff: ' + result.error); + } else { + State.toggleTo(State.SALES); + } + }) + } }; /* @@ -480,8 +506,12 @@ $(function () { case 'ok': State.toggleTo(State.SALES); break; - case 'writeoff': - alert("TODO"); + case 'writeoff': + State.toggleTo(State.WRITEOFF); + break; + case 'writeoffCategory': + // writeoff category with id: + Receipt.writeoffNow($(this).data('category')) break; default: Display.set('ongeimplementeerde functie'); diff --git a/templates/billing/juliana.html b/templates/billing/juliana.html index 431bbc7..31c8c71 100644 --- a/templates/billing/juliana.html +++ b/templates/billing/juliana.html @@ -29,7 +29,15 @@ }, androidapp: {{ androidapp|yesno:"true,false" }}, countdown: {{ countdown }}, - writeoff: {{ writeoff|yesno:"true,false" }} + writeoff: {{ writeoff|yesno:"true,false" }}, + writeoffCategories: { + {% for category in writeoff_categories %} + {{ category.id }}: { + name: "{{ category.name|escapejs }}", + id: {{ category.id }}, + }, + {% endfor %} + }, }; @@ -82,7 +90,7 @@ {% endif %} -
+
@@ -102,6 +110,30 @@
+ {% if writeoff %} +
+
+
+
+
+ {% for category in writeoff_categories %} + + {% endfor %} +
+
+
+
+
+ {% comment %} Insert to be withdrawn {% endcomment %} +
+
+ {% endif %}

Rekening

@@ -197,10 +229,6 @@

Error

- {% if writeoff %} -
-
- {% endif %}
{% compress js %} {# Vendor #} diff --git a/templates/consumption/consumptionform_detail.html b/templates/consumption/consumptionform_detail.html index 83d676c..df29d7c 100644 --- a/templates/consumption/consumptionform_detail.html +++ b/templates/consumption/consumptionform_detail.html @@ -8,11 +8,14 @@

{{ consumptionform }}
- {% if consumptionform.event.organizer == request.organization and is_manager and consumptionform.event.orders.exists %} - - - {% trans 'Orders' %} - + {% if consumptionform.event.organizer == request.organization and is_manager %} + {% comment %} Nested if because using brackets creates a TemplateSyntaxError {% endcomment %} + {% if consumptionform.event.orders.exists or consumptionform.event.writeoff_orders.exists %} + + + {% trans 'Orders' %} + + {% endif %} {% endif %} diff --git a/templates/scheduling/event_detail.html b/templates/scheduling/event_detail.html index 3a556db..ed06ae7 100644 --- a/templates/scheduling/event_detail.html +++ b/templates/scheduling/event_detail.html @@ -14,11 +14,14 @@

{% trans 'Consumption form' %} {% endif %} - {% if event.organizer == request.organization and is_manager and event.orders.exists %} - - - {% trans 'Orders' %} - + {% if event.organizer == request.organization and is_manager %} + {% comment %} Nested if because using brackets creates a TemplateSyntaxError {% endcomment %} + {% if event.orders.exists or event.writeoff_orders.exists %} + + + {% trans 'Orders' %} + + {% endif %} {% endif %} From 9269ca8bd7835a0e7691aa4a36d1308445b04346 Mon Sep 17 00:00:00 2001 From: Daniel Jonker Date: Tue, 8 Oct 2024 16:18:30 +0200 Subject: [PATCH 3/5] Added overview and export written off orders --- alexia/apps/billing/urls.py | 1 + alexia/apps/billing/views.py | 33 +- alexia/utils/writeoff.py | 21 + locale/nl/LC_MESSAGES/django.mo | Bin 27894 -> 28048 bytes locale/nl/LC_MESSAGES/django.po | 1006 ++++++++++++++++++++------- templates/billing/order_detail.html | 85 ++- 6 files changed, 869 insertions(+), 277 deletions(-) create mode 100644 alexia/utils/writeoff.py diff --git a/alexia/apps/billing/urls.py b/alexia/apps/billing/urls.py index e2f0009..c2df32b 100644 --- a/alexia/apps/billing/urls.py +++ b/alexia/apps/billing/urls.py @@ -5,6 +5,7 @@ urlpatterns = [ url(r'^order/$', views.OrderListView.as_view(), name='orders'), url(r'^order/(?P[0-9]+)/$', views.OrderDetailView.as_view(), name='event-orders'), + url(r'^order/writeoff/(?P[0-9]+)/$', views.WriteOffExportView.as_view(), name='writeoff_export'), url(r'^order/export/$', views.OrderExportView.as_view(), name='export-orders'), url(r'^stats/(?P[0-9]{4})/$', views.OrderYearView.as_view(), name='year-orders'), url(r'^stats/(?P[0-9]{4})/(?P[0-9]{1,2})/$', views.OrderMonthView.as_view(), name='month-orders'), diff --git a/alexia/apps/billing/views.py b/alexia/apps/billing/views.py index fd8aca3..e368621 100644 --- a/alexia/apps/billing/views.py +++ b/alexia/apps/billing/views.py @@ -1,13 +1,15 @@ from django.conf import settings from django.contrib.auth.mixins import LoginRequiredMixin from django.core.exceptions import PermissionDenied +from django.core import serializers from django.db.models import Count, Sum from django.db.models.functions import ExtractYear, TruncMonth -from django.http import Http404, HttpResponseRedirect +from django.http import Http404, JsonResponse, HttpResponseRedirect from django.shortcuts import get_object_or_404, render from django.urls import reverse, reverse_lazy from django.utils.dates import MONTHS from django.utils.translation import ugettext as _ +from django.views import View from django.views.generic.base import RedirectView, TemplateView from django.views.generic.detail import DetailView, SingleObjectMixin from django.views.generic.edit import ( @@ -33,8 +35,9 @@ OrganizationFilterMixin, OrganizationFormMixin, ) -from .models import Order, Purchase, WriteoffCategory - +from .models import Order, Purchase, WriteOffPurchase, WriteoffCategory +from alexia.utils.writeoff import get_writeoff_products +import json class JulianaView(TenderRequiredMixin, DetailView): template_name = 'billing/juliana.html' @@ -128,14 +131,38 @@ def get_context_data(self, **kwargs): .values('product') \ .annotate(amount=Sum('amount'), price=Sum('price')) + writeoff_exists = self.object.writeoff_orders.exists + + if writeoff_exists: + grouped_writeoff_products = get_writeoff_products(self.object, WriteOffPurchase.objects) + context = super(OrderDetailView, self).get_context_data(**kwargs) context.update({ 'orders': self.object.orders.select_related('authorization__user').order_by('-placed_at'), 'products': products, 'revenue': products.aggregate(Sum('price'))['price__sum'], + 'writeoff_exists': writeoff_exists, + 'grouped_writeoff_data': grouped_writeoff_products }) + return context +class WriteOffExportView(ManagerRequiredMixin, DenyWrongOrganizationMixin, View): + organization_field = 'organizer' + + # get event + def get(self, request, *args, **kwargs): + event_pk = kwargs.get('pk') # Extract the pk from kwargs + event = get_object_or_404(Event, pk=event_pk) # Fetch the Event or raise 404 if not found + + writeoff_exists = event.writeoff_orders.exists + + if not writeoff_exists: + raise Http404 + + grouped_writeoff_products = get_writeoff_products(event, WriteOffPurchase.objects) + + return JsonResponse(grouped_writeoff_products) class OrderExportView(ManagerRequiredMixin, FormView): template_name = 'billing/order_export_form.html' diff --git a/alexia/utils/writeoff.py b/alexia/utils/writeoff.py new file mode 100644 index 0000000..ee4f82a --- /dev/null +++ b/alexia/utils/writeoff.py @@ -0,0 +1,21 @@ +from collections import defaultdict +from django.db.models import Sum + +def get_writeoff_products(event, writeoff_purchases): + writeoff_products = writeoff_purchases.filter(order__event=event) \ + .values('order__writeoff_category__name', 'product') \ + .annotate(total_amount=Sum('amount'), total_price=Sum('price')) \ + .order_by('order__writeoff_category__name', 'product') + + # Group writeoffs by category + grouped_writeoff_products = defaultdict(lambda: {'products': [], 'total_amount': 0, 'total_price': 0}) + + # calculate total product amount and total price per category + for product in writeoff_products: + category_name = product['order__writeoff_category__name'] + grouped_writeoff_products[category_name]['products'].append(product) + grouped_writeoff_products[category_name]['total_amount'] += product['total_amount'] + grouped_writeoff_products[category_name]['total_price'] += product['total_price'] + + # Convert defaultdict to a regular dict for easier template use + return dict(grouped_writeoff_products) \ No newline at end of file diff --git a/locale/nl/LC_MESSAGES/django.mo b/locale/nl/LC_MESSAGES/django.mo index 691664494c76fb07346979e1445d2488b2bf64a1..d7e6bfc132340ba2aa4cbe94da457e5d8ea02f28 100644 GIT binary patch delta 8356 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 B#o7P> delta 8204 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 AcK`qY diff --git a/locale/nl/LC_MESSAGES/django.po b/locale/nl/LC_MESSAGES/django.po index c133b46..54dbdcc 100644 --- a/locale/nl/LC_MESSAGES/django.po +++ b/locale/nl/LC_MESSAGES/django.po @@ -6,9 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: alexia\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-09-16 22:34+0200\n" -"PO-Revision-Date: 2024-09-16 22:50+0018\n" -"Last-Translator: b' '\n" +"POT-Creation-Date: 2024-10-08 16:17+0200\n" +"PO-Revision-Date: 2024-10-08 16:17+0018\n" +"Last-Translator: b'Daniel Jonker '\n" "Language-Team: WWW-commissie \n" "Language: nl\n" "MIME-Version: 1.0\n" @@ -17,7 +17,9 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1)\n" "X-Translated-Using: django-rosetta 0.9.6\n" -#: alexia/apps/billing/forms.py:51 alexia/apps/consumption/forms.py:118 templates/billing/order_list.html:12 templates/consumption/consumptionform_list.html:13 +#: alexia/apps/billing/forms.py:51 alexia/apps/consumption/forms.py:118 +#: templates/billing/order_detail.html:122 templates/billing/order_list.html:12 +#: templates/consumption/consumptionform_list.html:13 msgid "Export" msgstr "Exporteren" @@ -29,19 +31,29 @@ msgstr "Begintijd" msgid "Till time" msgstr "Eindtijd" -#: alexia/apps/billing/forms.py:63 templates/billing/pricegroup_form.html:7 templates/billing/pricegroup_form.html:17 +#: alexia/apps/billing/forms.py:63 templates/billing/pricegroup_form.html:7 +#: templates/billing/pricegroup_form.html:17 msgid "New price group" msgstr "Nieuwe prijsgroep" -#: alexia/apps/billing/models.py:23 alexia/apps/billing/models.py:45 alexia/apps/billing/models.py:140 alexia/apps/billing/models.py:228 alexia/apps/billing/models.py:343 alexia/apps/organization/models.py:146 alexia/apps/organization/models.py:167 alexia/apps/scheduling/models.py:28 alexia/apps/scheduling/models.py:206 +#: alexia/apps/billing/models.py:23 alexia/apps/billing/models.py:45 +#: alexia/apps/billing/models.py:140 alexia/apps/billing/models.py:228 +#: alexia/apps/billing/models.py:343 alexia/apps/organization/models.py:146 +#: alexia/apps/organization/models.py:167 alexia/apps/scheduling/models.py:28 +#: alexia/apps/scheduling/models.py:206 msgid "organization" msgstr "organisatie" -#: alexia/apps/billing/models.py:26 alexia/apps/billing/models.py:48 alexia/apps/billing/models.py:91 alexia/apps/billing/models.py:337 alexia/apps/consumption/models.py:14 alexia/apps/organization/models.py:21 alexia/apps/organization/models.py:131 alexia/apps/scheduling/models.py:29 alexia/apps/scheduling/models.py:60 alexia/apps/scheduling/models.py:208 +#: alexia/apps/billing/models.py:26 alexia/apps/billing/models.py:48 +#: alexia/apps/billing/models.py:91 alexia/apps/billing/models.py:337 +#: alexia/apps/consumption/models.py:14 alexia/apps/organization/models.py:21 +#: alexia/apps/organization/models.py:131 alexia/apps/scheduling/models.py:29 +#: alexia/apps/scheduling/models.py:60 alexia/apps/scheduling/models.py:208 msgid "name" msgstr "naam" -#: alexia/apps/billing/models.py:30 alexia/apps/billing/models.py:71 alexia/apps/billing/models.py:135 +#: alexia/apps/billing/models.py:30 alexia/apps/billing/models.py:71 +#: alexia/apps/billing/models.py:135 msgid "product group" msgstr "productgroep" @@ -57,7 +69,8 @@ msgstr "prijsgroep" msgid "price groups" msgstr "prijsgroepen" -#: alexia/apps/billing/models.py:72 alexia/apps/billing/models.py:177 alexia/apps/billing/models.py:326 alexia/apps/billing/models.py:385 +#: alexia/apps/billing/models.py:72 alexia/apps/billing/models.py:177 +#: alexia/apps/billing/models.py:326 alexia/apps/billing/models.py:392 msgid "price" msgstr "prijs" @@ -78,7 +91,9 @@ msgstr "{product} voor {price}" msgid "shortcut" msgstr "shortcut" -#: alexia/apps/billing/models.py:94 templates/billing/permanentproduct_detail.html:48 templates/billing/temporaryproduct_detail.html:44 +#: alexia/apps/billing/models.py:94 +#: templates/billing/permanentproduct_detail.html:48 +#: templates/billing/temporaryproduct_detail.html:44 msgid "Text color" msgstr "Tekstkleur" @@ -86,7 +101,9 @@ msgstr "Tekstkleur" msgid "Text color for Juliana" msgstr "Tekstkleur voor Juliana" -#: alexia/apps/billing/models.py:101 templates/billing/permanentproduct_detail.html:52 templates/billing/temporaryproduct_detail.html:48 +#: alexia/apps/billing/models.py:101 +#: templates/billing/permanentproduct_detail.html:52 +#: templates/billing/temporaryproduct_detail.html:48 msgid "Background color" msgstr "Achtergrondkleur" @@ -98,7 +115,9 @@ msgstr "Achtergrondkleur voor Juliana" msgid "position" msgstr "positie" -#: alexia/apps/billing/models.py:146 alexia/apps/billing/models.py:324 alexia/apps/billing/models.py:383 alexia/apps/consumption/models.py:137 alexia/apps/consumption/models.py:189 +#: alexia/apps/billing/models.py:146 alexia/apps/billing/models.py:324 +#: alexia/apps/billing/models.py:390 alexia/apps/consumption/models.py:137 +#: alexia/apps/consumption/models.py:189 msgid "product" msgstr "product" @@ -106,7 +125,9 @@ msgstr "product" msgid "products" msgstr "producten" -#: alexia/apps/billing/models.py:175 alexia/apps/billing/models.py:270 alexia/apps/billing/models.py:348 alexia/apps/consumption/models.py:50 alexia/apps/scheduling/models.py:107 alexia/apps/scheduling/models.py:240 +#: alexia/apps/billing/models.py:175 alexia/apps/billing/models.py:270 +#: alexia/apps/billing/models.py:349 alexia/apps/consumption/models.py:50 +#: alexia/apps/scheduling/models.py:107 alexia/apps/scheduling/models.py:240 msgid "event" msgstr "activiteit" @@ -122,7 +143,8 @@ msgstr "tijdelijke producten" msgid "identifier" msgstr "identifier" -#: alexia/apps/billing/models.py:199 alexia/apps/organization/models.py:135 alexia/apps/scheduling/models.py:32 +#: alexia/apps/billing/models.py:199 alexia/apps/organization/models.py:135 +#: alexia/apps/scheduling/models.py:32 msgid "is active" msgstr "is actief" @@ -130,7 +152,9 @@ msgstr "is actief" msgid "registered at" msgstr "geregistreerd op" -#: alexia/apps/billing/models.py:201 alexia/apps/billing/models.py:222 alexia/apps/organization/models.py:38 alexia/apps/organization/models.py:53 alexia/apps/organization/models.py:162 +#: alexia/apps/billing/models.py:201 alexia/apps/billing/models.py:222 +#: alexia/apps/organization/models.py:38 alexia/apps/organization/models.py:53 +#: alexia/apps/organization/models.py:162 msgid "user" msgstr "gebruiker" @@ -171,7 +195,7 @@ msgstr "autorisaties" msgid "{user} of {organization}" msgstr "{user} van {organization}" -#: alexia/apps/billing/models.py:277 alexia/apps/billing/models.py:349 +#: alexia/apps/billing/models.py:277 alexia/apps/billing/models.py:350 msgid "placed at" msgstr "geplaatst op" @@ -183,11 +207,13 @@ msgstr "gesynchroniseerd" msgid "Designates whether this transaction is imported by the organization." msgstr "Geeft aan of deze transactie al is gesynchroniseerd." -#: alexia/apps/billing/models.py:288 alexia/apps/billing/models.py:353 +#: alexia/apps/billing/models.py:288 alexia/apps/billing/models.py:354 msgid "added by" msgstr "toegevoegd door" -#: alexia/apps/billing/models.py:291 alexia/apps/billing/models.py:325 alexia/apps/billing/models.py:356 alexia/apps/billing/models.py:384 alexia/apps/consumption/models.py:191 +#: alexia/apps/billing/models.py:291 alexia/apps/billing/models.py:325 +#: alexia/apps/billing/models.py:357 alexia/apps/billing/models.py:391 +#: alexia/apps/consumption/models.py:191 msgid "amount" msgstr "aantal" @@ -195,11 +221,12 @@ msgstr "aantal" msgid "rfid card" msgstr "RFID-kaart" -#: alexia/apps/billing/models.py:296 alexia/apps/billing/models.py:323 alexia/apps/billing/models.py:360 alexia/apps/billing/models.py:382 +#: alexia/apps/billing/models.py:296 alexia/apps/billing/models.py:323 +#: alexia/apps/billing/models.py:389 msgid "order" msgstr "transactie" -#: alexia/apps/billing/models.py:297 alexia/apps/billing/models.py:361 +#: alexia/apps/billing/models.py:297 msgid "orders" msgstr "transacties" @@ -212,11 +239,11 @@ msgstr "{user} om {time} bij {event}" msgid "debtor" msgstr "debiteur" -#: alexia/apps/billing/models.py:329 alexia/apps/billing/models.py:393 +#: alexia/apps/billing/models.py:329 alexia/apps/billing/models.py:395 msgid "purchase" msgstr "aankoop" -#: alexia/apps/billing/models.py:330 alexia/apps/billing/models.py:394 +#: alexia/apps/billing/models.py:330 alexia/apps/billing/models.py:396 msgid "purchases" msgstr "aankopen" @@ -226,33 +253,53 @@ msgstr "aankopen" msgid "short description" msgstr "omschrijving" -#: alexia/apps/billing/models.py:339 alexia/apps/organization/models.py:23 alexia/apps/organization/models.py:133 +#: alexia/apps/billing/models.py:339 alexia/apps/organization/models.py:23 +#: alexia/apps/organization/models.py:133 msgid "color" msgstr "kleur" -#: alexia/apps/billing/models.py:364 +#: alexia/apps/billing/models.py:345 +#, fuzzy +#| msgid "Active" +msgid "active" +msgstr "Actief" + +#: alexia/apps/billing/models.py:362 +msgid "writeoff category" +msgstr "Afschrijf categorie" + +#: alexia/apps/billing/models.py:367 +msgid "writeoff order" +msgstr "Afschrijf product" + +#: alexia/apps/billing/models.py:368 +msgid "writeoff orders" +msgstr "Afschrijf producten" + +#: alexia/apps/billing/models.py:371 #, fuzzy, python-brace-format #| msgid "{user} at {time} on {event}" msgid "{time} on {event}" msgstr "{user} om {time} bij {event}" -#: alexia/apps/billing/models.py:389 -msgid "writeoff category" -msgstr "Afschrijf categorie" - -#: alexia/apps/billing/views.py:47 alexia/apps/consumption/views.py:73 +#: alexia/apps/billing/views.py:50 alexia/apps/consumption/views.py:73 msgid "You are not a tender for this event" msgstr "Je bent geen tapper bij deze borrel!" -#: alexia/apps/billing/views.py:49 +#: alexia/apps/billing/views.py:52 msgid "This event is not open" msgstr "Deze borrel begint nog niet!" -#: alexia/apps/config.py:9 templates/base_app.html:48 templates/billing/order_detail.html:40 templates/profile/profile.html:49 +#: alexia/apps/config.py:9 templates/base_app.html:48 +#: templates/billing/order_detail.html:40 templates/profile/profile.html:49 msgid "Billing" msgstr "Financiƫn" -#: alexia/apps/config.py:14 templates/base_app.html:62 templates/consumption/consumptionform_detail.html:86 templates/consumption/consumptionform_detail.html:88 templates/consumption/dcf_check.html:68 templates/consumption/pdf/page.html:23 +#: alexia/apps/config.py:14 templates/base_app.html:62 +#: templates/consumption/consumptionform_detail.html:90 +#: templates/consumption/consumptionform_detail.html:92 +#: templates/consumption/dcf_check.html:68 +#: templates/consumption/pdf/page.html:23 msgid "Consumption" msgstr "Verbruik" @@ -260,7 +307,17 @@ msgstr "Verbruik" msgid "General" msgstr "Generiek" -#: alexia/apps/config.py:24 alexia/apps/scheduling/forms.py:73 templates/billing/permanentproduct_detail.html:31 templates/billing/pricegroup_detail.html:31 templates/consumption/consumptionform_list.html:31 templates/consumption/consumptionform_list.html:68 templates/consumption/pdf/page.html:9 templates/general/about.html:40 templates/organization/certificate_form.html:27 templates/profile/profile.html:121 templates/profile/profile.html:146 templates/scheduling/event_calendar.html:26 templates/scheduling/event_list.html:37 templates/scheduling/mailtemplate_detail.html:24 +#: alexia/apps/config.py:24 alexia/apps/scheduling/forms.py:73 +#: templates/billing/permanentproduct_detail.html:31 +#: templates/billing/pricegroup_detail.html:31 +#: templates/consumption/consumptionform_list.html:31 +#: templates/consumption/consumptionform_list.html:68 +#: templates/consumption/pdf/page.html:9 templates/general/about.html:40 +#: templates/organization/certificate_form.html:27 +#: templates/profile/profile.html:121 templates/profile/profile.html:146 +#: templates/scheduling/event_calendar.html:26 +#: templates/scheduling/event_list.html:37 +#: templates/scheduling/mailtemplate_detail.html:24 msgid "Organization" msgstr "Organisatie" @@ -297,18 +354,25 @@ msgid "I declare that I have cleaned the rooms" msgstr "Ik verklaar dat de ruimtes schoongemaakt zijn" #: alexia/apps/consumption/forms.py:96 -msgid "After each event the rooms have to cleaned according to the cleaning checklist." -msgstr "Na elk evenement moeten de ruimtes schoongemaakt worden aan de hand van de schoonmaakchecklist." +msgid "" +"After each event the rooms have to cleaned according to the cleaning " +"checklist." +msgstr "" +"Na elk evenement moeten de ruimtes schoongemaakt worden aan de hand van de " +"schoonmaakchecklist." #: alexia/apps/consumption/forms.py:99 msgid "I declare that this form has been filled in truthfully" msgstr "Ik verklaar dat dit formulier naar waarheid is ingevuld" #: alexia/apps/consumption/forms.py:100 -msgid "I am sure that the values above are filled in correct and has been verified." +msgid "" +"I am sure that the values above are filled in correct and has been verified." msgstr "Ik weet zeker dat bovenstaande gegevens gecheckt zijn en kloppen." -#: alexia/apps/consumption/forms.py:120 templates/billing/order_export_result.html:17 templates/billing/order_year.html:15 +#: alexia/apps/consumption/forms.py:120 +#: templates/billing/order_export_result.html:17 +#: templates/billing/order_year.html:15 msgid "Month" msgstr "Maand" @@ -345,7 +409,8 @@ msgid "has flowmeter" msgstr "heeft flowmeter" #: alexia/apps/consumption/models.py:37 -msgid "Designates wheter apart from weight, this product also uses a flowmeter." +msgid "" +"Designates wheter apart from weight, this product also uses a flowmeter." msgstr "Geeft aan dat naast gewicht, dit product ook flowmeters gebruikt." #: alexia/apps/consumption/models.py:41 @@ -368,7 +433,8 @@ msgstr "afgerond op" msgid "comments" msgstr "commentaar" -#: alexia/apps/consumption/models.py:62 templates/consumption/consumptionform_detail.html:3 +#: alexia/apps/consumption/models.py:62 +#: templates/consumption/consumptionform_detail.html:3 msgid "consumption form" msgstr "verbruiksformulier" @@ -465,7 +531,8 @@ msgstr "Gebruikersnaam" msgid "Student or employee account (e.g. s0000000 or m0000000)" msgstr "Student- of medewerkersaccount (bijv. s0000000 of m0000000)" -#: alexia/apps/organization/forms.py:52 templates/organization/membership_detail.html:52 +#: alexia/apps/organization/forms.py:52 +#: templates/organization/membership_detail.html:52 msgid "Bartender nickname" msgstr "Tappersbijnaam" @@ -498,16 +565,21 @@ msgid "has IVA-certificate" msgstr "heeft IVA-certificaat" #: alexia/apps/organization/models.py:60 -msgid "Override for an user to indicate IVA rights without uploading a certificate." -msgstr "Override voor een gebruiker om IVA-rechten te hebben zonder certificaat." +msgid "" +"Override for an user to indicate IVA rights without uploading a certificate." +msgstr "" +"Override voor een gebruiker om IVA-rechten te hebben zonder certificaat." #: alexia/apps/organization/models.py:64 msgid "has BHV-certificate" msgstr "heeft BHV-diploma" #: alexia/apps/organization/models.py:67 -msgid "Designates that this user has a valid, non-expired BHV (Emergency Response Officer) certificate." -msgstr "Geeft aan dat deze gebruiker een geldig, niet verlopen BHV-diploma heeft." +msgid "" +"Designates that this user has a valid, non-expired BHV (Emergency Response " +"Officer) certificate." +msgstr "" +"Geeft aan dat deze gebruiker een geldig, niet verlopen BHV-diploma heeft." #: alexia/apps/organization/models.py:71 msgid "is foundation manager" @@ -582,7 +654,8 @@ msgstr "lidmaatschappen" msgid "%(user)s of %(organization)s" msgstr "%(user)s van %(organization)s" -#: alexia/apps/organization/models.py:221 alexia/apps/organization/models.py:234 +#: alexia/apps/organization/models.py:221 +#: alexia/apps/organization/models.py:234 msgid "certificate" msgstr "certificaat" @@ -606,7 +679,10 @@ msgstr "IVA certificaat van" msgid "Flags" msgstr "Indicatoren" -#: alexia/apps/scheduling/admin.py:22 templates/consumption/consumptionform_detail.html:73 templates/consumption/dcf_check.html:93 templates/consumption/pdf/page.html:64 +#: alexia/apps/scheduling/admin.py:22 +#: templates/consumption/consumptionform_detail.html:77 +#: templates/consumption/dcf_check.html:93 +#: templates/consumption/pdf/page.html:64 msgid "Comments" msgstr "Commentaar" @@ -731,7 +807,8 @@ msgstr "activiteiten" msgid "Assigned" msgstr "Toegewezen" -#: alexia/apps/scheduling/models.py:197 env/lib/python3.9/site-packages/django/forms/widgets.py:712 +#: alexia/apps/scheduling/models.py:197 +#: env/lib/python3.9/site-packages/django/forms/widgets.py:712 msgid "Yes" msgstr "Ja" @@ -739,7 +816,8 @@ msgstr "Ja" msgid "Maybe" msgstr "Misschien" -#: alexia/apps/scheduling/models.py:199 env/lib/python3.9/site-packages/django/forms/widgets.py:713 +#: alexia/apps/scheduling/models.py:199 +#: env/lib/python3.9/site-packages/django/forms/widgets.py:713 msgid "No" msgstr "Nee" @@ -811,11 +889,14 @@ msgstr "Voer een geldige hexadecimale kleur in" msgid "Enter a valid username" msgstr "Voer een geldige gebruikersnaam in" -#: alexia/forms/mixins.py:22 templates/consumption/dcf.html:34 templates/registration/register.html:17 +#: alexia/forms/mixins.py:22 templates/consumption/dcf.html:34 +#: templates/registration/register.html:17 msgid "Save" msgstr "Opslaan" -#: env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:129 env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:139 env/lib/python3.9/site-packages/django/forms/fields.py:53 +#: env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:129 +#: env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:139 +#: env/lib/python3.9/site-packages/django/forms/fields.py:53 msgid "This field is required." msgstr "" @@ -827,7 +908,8 @@ msgstr "" msgid "i18n legend" msgstr "" -#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout_objects.py:134 env/lib/python3.9/site-packages/django/core/validators.py:31 +#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout_objects.py:134 +#: env/lib/python3.9/site-packages/django/core/validators.py:31 #, fuzzy #| msgid "Enter a valid username" msgid "Enter a valid value." @@ -863,7 +945,8 @@ msgstr "" msgid "That page contains no results" msgstr "" -#: env/lib/python3.9/site-packages/django/core/validators.py:102 env/lib/python3.9/site-packages/django/forms/fields.py:658 +#: env/lib/python3.9/site-packages/django/core/validators.py:102 +#: env/lib/python3.9/site-packages/django/forms/fields.py:658 #, fuzzy #| msgid "Enter a valid username" msgid "Enter a valid URL." @@ -883,26 +966,32 @@ msgstr "Voer een geldige gebruikersnaam in" #. Translators: "letters" means latin letters: a-z and A-Z. #: env/lib/python3.9/site-packages/django/core/validators.py:239 -msgid "Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens." +msgid "" +"Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens." msgstr "" #: env/lib/python3.9/site-packages/django/core/validators.py:246 -msgid "Enter a valid 'slug' consisting of Unicode letters, numbers, underscores, or hyphens." +msgid "" +"Enter a valid 'slug' consisting of Unicode letters, numbers, underscores, or " +"hyphens." msgstr "" -#: env/lib/python3.9/site-packages/django/core/validators.py:255 env/lib/python3.9/site-packages/django/core/validators.py:275 +#: env/lib/python3.9/site-packages/django/core/validators.py:255 +#: env/lib/python3.9/site-packages/django/core/validators.py:275 #, fuzzy #| msgid "Enter a valid username" msgid "Enter a valid IPv4 address." msgstr "Voer een geldige gebruikersnaam in" -#: env/lib/python3.9/site-packages/django/core/validators.py:260 env/lib/python3.9/site-packages/django/core/validators.py:276 +#: env/lib/python3.9/site-packages/django/core/validators.py:260 +#: env/lib/python3.9/site-packages/django/core/validators.py:276 #, fuzzy #| msgid "Enter a valid username" msgid "Enter a valid IPv6 address." msgstr "Voer een geldige gebruikersnaam in" -#: env/lib/python3.9/site-packages/django/core/validators.py:270 env/lib/python3.9/site-packages/django/core/validators.py:274 +#: env/lib/python3.9/site-packages/django/core/validators.py:270 +#: env/lib/python3.9/site-packages/django/core/validators.py:274 msgid "Enter a valid IPv4 or IPv6 address." msgstr "" @@ -927,19 +1016,29 @@ msgstr "" #: env/lib/python3.9/site-packages/django/core/validators.py:361 #, python-format -msgid "Ensure this value has at least %(limit_value)d character (it has %(show_value)d)." -msgid_plural "Ensure this value has at least %(limit_value)d characters (it has %(show_value)d)." +msgid "" +"Ensure this value has at least %(limit_value)d character (it has " +"%(show_value)d)." +msgid_plural "" +"Ensure this value has at least %(limit_value)d characters (it has " +"%(show_value)d)." msgstr[0] "" msgstr[1] "" #: env/lib/python3.9/site-packages/django/core/validators.py:376 #, python-format -msgid "Ensure this value has at most %(limit_value)d character (it has %(show_value)d)." -msgid_plural "Ensure this value has at most %(limit_value)d characters (it has %(show_value)d)." +msgid "" +"Ensure this value has at most %(limit_value)d character (it has " +"%(show_value)d)." +msgid_plural "" +"Ensure this value has at most %(limit_value)d characters (it has " +"%(show_value)d)." msgstr[0] "" msgstr[1] "" -#: env/lib/python3.9/site-packages/django/core/validators.py:395 env/lib/python3.9/site-packages/django/forms/fields.py:290 env/lib/python3.9/site-packages/django/forms/fields.py:325 +#: env/lib/python3.9/site-packages/django/core/validators.py:395 +#: env/lib/python3.9/site-packages/django/forms/fields.py:290 +#: env/lib/python3.9/site-packages/django/forms/fields.py:325 msgid "Enter a number." msgstr "" @@ -959,21 +1058,28 @@ msgstr[1] "" #: env/lib/python3.9/site-packages/django/core/validators.py:407 #, python-format -msgid "Ensure that there are no more than %(max)s digit before the decimal point." -msgid_plural "Ensure that there are no more than %(max)s digits before the decimal point." +msgid "" +"Ensure that there are no more than %(max)s digit before the decimal point." +msgid_plural "" +"Ensure that there are no more than %(max)s digits before the decimal point." msgstr[0] "" msgstr[1] "" #: env/lib/python3.9/site-packages/django/core/validators.py:469 #, python-format -msgid "File extension '%(extension)s' is not allowed. Allowed extensions are: '%(allowed_extensions)s'." +msgid "" +"File extension '%(extension)s' is not allowed. Allowed extensions are: " +"'%(allowed_extensions)s'." msgstr "" #: env/lib/python3.9/site-packages/django/core/validators.py:521 msgid "Null characters are not allowed." msgstr "" -#: env/lib/python3.9/site-packages/django/db/models/base.py:1162 env/lib/python3.9/site-packages/django/forms/models.py:756 templates/base.html:32 templates/general/about.html:23 templates/general/about.html:34 +#: env/lib/python3.9/site-packages/django/db/models/base.py:1162 +#: env/lib/python3.9/site-packages/django/forms/models.py:756 +#: templates/base.html:32 templates/general/about.html:23 +#: templates/general/about.html:34 msgid "and" msgstr "en" @@ -1004,7 +1110,8 @@ msgstr "" #. Eg: "Title must be unique for pub_date year" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:111 #, python-format -msgid "%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s." +msgid "" +"%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s." msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:128 @@ -1012,16 +1119,19 @@ msgstr "" msgid "Field of type: %(field_type)s" msgstr "" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:899 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1766 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:899 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1766 msgid "Integer" msgstr "" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:903 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1764 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:903 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1764 #, python-format msgid "'%(value)s' value must be an integer." msgstr "" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:978 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1832 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:978 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1832 msgid "Big (8 byte) integer" msgstr "" @@ -1050,12 +1160,17 @@ msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1147 #, python-format -msgid "'%(value)s' value has an invalid date format. It must be in YYYY-MM-DD format." +msgid "" +"'%(value)s' value has an invalid date format. It must be in YYYY-MM-DD " +"format." msgstr "" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1149 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1292 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1149 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1292 #, python-format -msgid "'%(value)s' value has the correct format (YYYY-MM-DD) but it is an invalid date." +msgid "" +"'%(value)s' value has the correct format (YYYY-MM-DD) but it is an invalid " +"date." msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1152 @@ -1064,12 +1179,16 @@ msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1290 #, python-format -msgid "'%(value)s' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] format." +msgid "" +"'%(value)s' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[." +"uuuuuu]][TZ] format." msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1294 #, python-format -msgid "'%(value)s' value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]) but it is an invalid date/time." +msgid "" +"'%(value)s' value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]" +"[TZ]) but it is an invalid date/time." msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1298 @@ -1089,7 +1208,9 @@ msgstr "Identificatienr." #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1587 #, python-format -msgid "'%(value)s' value has an invalid format. It must be in [DD] [HH:[MM:]]ss[.uuuuuu] format." +msgid "" +"'%(value)s' value has an invalid format. It must be in [DD] [HH:[MM:]]ss[." +"uuuuuu] format." msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1590 @@ -1098,7 +1219,9 @@ msgstr "" msgid "Duration" msgstr "Autorisatie" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1640 templates/organization/membership_detail.html:48 templates/profile/profile.html:15 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1640 +#: templates/organization/membership_detail.html:48 +#: templates/profile/profile.html:15 msgid "Email address" msgstr "E-mailadres" @@ -1129,7 +1252,8 @@ msgstr "E-mailadres" msgid "IP address" msgstr "E-mailadres" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1959 env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1960 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1959 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1960 #, python-format msgid "'%(value)s' value must be either None, True or False." msgstr "" @@ -1161,15 +1285,21 @@ msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2091 #, python-format -msgid "'%(value)s' value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] format." +msgid "" +"'%(value)s' value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] " +"format." msgstr "" #: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2093 #, python-format -msgid "'%(value)s' value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an invalid time." +msgid "" +"'%(value)s' value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an " +"invalid time." msgstr "" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2096 templates/scheduling/event_bartender.html:14 templates/scheduling/event_list.html:36 +#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2096 +#: templates/scheduling/event_bartender.html:14 +#: templates/scheduling/event_list.html:36 msgid "Time" msgstr "Tijd" @@ -1241,13 +1371,15 @@ msgstr "" msgid "Enter a whole number." msgstr "Voer een geldige gebruikersnaam in" -#: env/lib/python3.9/site-packages/django/forms/fields.py:396 env/lib/python3.9/site-packages/django/forms/fields.py:1126 +#: env/lib/python3.9/site-packages/django/forms/fields.py:396 +#: env/lib/python3.9/site-packages/django/forms/fields.py:1126 #, fuzzy #| msgid "Enter a valid username" msgid "Enter a valid date." msgstr "Voer een geldige gebruikersnaam in" -#: env/lib/python3.9/site-packages/django/forms/fields.py:420 env/lib/python3.9/site-packages/django/forms/fields.py:1127 +#: env/lib/python3.9/site-packages/django/forms/fields.py:420 +#: env/lib/python3.9/site-packages/django/forms/fields.py:1127 #, fuzzy #| msgid "Enter a valid username" msgid "Enter a valid time." @@ -1285,7 +1417,8 @@ msgstr "" #: env/lib/python3.9/site-packages/django/forms/fields.py:536 #, python-format msgid "Ensure this filename has at most %(max)d character (it has %(length)d)." -msgid_plural "Ensure this filename has at most %(max)d characters (it has %(length)d)." +msgid_plural "" +"Ensure this filename has at most %(max)d characters (it has %(length)d)." msgstr[0] "" msgstr[1] "" @@ -1294,15 +1427,21 @@ msgid "Please either submit a file or check the clear checkbox, not both." msgstr "" #: env/lib/python3.9/site-packages/django/forms/fields.py:600 -msgid "Upload a valid image. The file you uploaded was either not an image or a corrupted image." +msgid "" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." msgstr "" -#: env/lib/python3.9/site-packages/django/forms/fields.py:762 env/lib/python3.9/site-packages/django/forms/fields.py:852 env/lib/python3.9/site-packages/django/forms/models.py:1270 +#: env/lib/python3.9/site-packages/django/forms/fields.py:762 +#: env/lib/python3.9/site-packages/django/forms/fields.py:852 +#: env/lib/python3.9/site-packages/django/forms/models.py:1270 #, python-format msgid "Select a valid choice. %(value)s is not one of the available choices." msgstr "" -#: env/lib/python3.9/site-packages/django/forms/fields.py:853 env/lib/python3.9/site-packages/django/forms/fields.py:968 env/lib/python3.9/site-packages/django/forms/models.py:1269 +#: env/lib/python3.9/site-packages/django/forms/fields.py:853 +#: env/lib/python3.9/site-packages/django/forms/fields.py:968 +#: env/lib/python3.9/site-packages/django/forms/models.py:1269 msgid "Enter a list of values." msgstr "" @@ -1344,13 +1483,34 @@ msgid_plural "Please submit %d or more forms." msgstr[0] "" msgstr[1] "" -#: env/lib/python3.9/site-packages/django/forms/formsets.py:371 env/lib/python3.9/site-packages/django/forms/formsets.py:373 +#: env/lib/python3.9/site-packages/django/forms/formsets.py:371 +#: env/lib/python3.9/site-packages/django/forms/formsets.py:373 #, fuzzy #| msgid "Orders" msgid "Order" msgstr "Transacties" -#: env/lib/python3.9/site-packages/django/forms/formsets.py:375 templates/billing/permanentproduct_confirm_delete.html:20 templates/billing/permanentproduct_detail.html:17 templates/billing/permanentproduct_list.html:44 templates/billing/pricegroup_confirm_delete.html:21 templates/billing/pricegroup_detail.html:17 templates/billing/pricegroup_detail.html:59 templates/billing/pricegroup_list.html:35 templates/billing/productgroup_confirm_delete.html:19 templates/billing/productgroup_detail.html:17 templates/billing/productgroup_detail.html:44 templates/billing/productgroup_detail.html:88 templates/billing/productgroup_list.html:35 templates/billing/sellingprice_confirm_delete.html:17 templates/billing/temporaryproduct_confirm_delete.html:14 templates/billing/temporaryproduct_detail.html:17 templates/consumption/partials/unit_consumption.html:15 templates/consumption/partials/weight_consumption.html:19 templates/organization/membership_confirm_delete.html:20 templates/organization/membership_list.html:89 templates/scheduling/event_detail.html:99 +#: env/lib/python3.9/site-packages/django/forms/formsets.py:375 +#: templates/billing/permanentproduct_confirm_delete.html:20 +#: templates/billing/permanentproduct_detail.html:17 +#: templates/billing/permanentproduct_list.html:44 +#: templates/billing/pricegroup_confirm_delete.html:21 +#: templates/billing/pricegroup_detail.html:17 +#: templates/billing/pricegroup_detail.html:59 +#: templates/billing/pricegroup_list.html:35 +#: templates/billing/productgroup_confirm_delete.html:19 +#: templates/billing/productgroup_detail.html:17 +#: templates/billing/productgroup_detail.html:44 +#: templates/billing/productgroup_detail.html:88 +#: templates/billing/productgroup_list.html:35 +#: templates/billing/sellingprice_confirm_delete.html:17 +#: templates/billing/temporaryproduct_confirm_delete.html:14 +#: templates/billing/temporaryproduct_detail.html:17 +#: templates/consumption/partials/unit_consumption.html:15 +#: templates/consumption/partials/weight_consumption.html:19 +#: templates/organization/membership_confirm_delete.html:20 +#: templates/organization/membership_list.html:89 +#: templates/scheduling/event_detail.html:103 msgid "Delete" msgstr "Verwijderen" @@ -1366,7 +1526,9 @@ msgstr "" #: env/lib/python3.9/site-packages/django/forms/models.py:761 #, python-format -msgid "Please correct the duplicate data for %(field_name)s which must be unique for the %(lookup)s in %(date_field)s." +msgid "" +"Please correct the duplicate data for %(field_name)s which must be unique " +"for the %(lookup)s in %(date_field)s." msgstr "" #: env/lib/python3.9/site-packages/django/forms/models.py:770 @@ -1388,7 +1550,9 @@ msgstr "" #: env/lib/python3.9/site-packages/django/forms/utils.py:162 #, python-format -msgid "%(datetime)s couldn't be interpreted in time zone %(current_timezone)s; it may be ambiguous or it may not exist." +msgid "" +"%(datetime)s couldn't be interpreted in time zone %(current_timezone)s; it " +"may be ambiguous or it may not exist." msgstr "" #: env/lib/python3.9/site-packages/django/forms/widgets.py:395 @@ -1403,7 +1567,8 @@ msgstr "" msgid "Change" msgstr "" -#: env/lib/python3.9/site-packages/django/forms/widgets.py:711 templates/scheduling/event_detail.html:138 +#: env/lib/python3.9/site-packages/django/forms/widgets.py:711 +#: templates/scheduling/event_detail.html:142 msgid "Unknown" msgstr "Onbekend" @@ -1411,7 +1576,8 @@ msgstr "Onbekend" msgid "yes,no,maybe" msgstr "" -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:817 env/lib/python3.9/site-packages/django/template/defaultfilters.py:834 +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:817 +#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:834 #, python-format msgid "%(size)d byte" msgid_plural "%(size)d bytes" @@ -1469,107 +1635,134 @@ msgstr "Begingewicht" msgid "noon" msgstr "" -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:81 +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 +#: templates/scheduling/event_calendar.html:81 msgid "Monday" msgstr "maandag" -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:81 +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 +#: templates/scheduling/event_calendar.html:81 msgid "Tuesday" msgstr "dinsdag" -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:81 +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 +#: templates/scheduling/event_calendar.html:81 msgid "Wednesday" msgstr "woensdag" -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:82 +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 +#: templates/scheduling/event_calendar.html:82 msgid "Thursday" msgstr "donderdag" -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 templates/scheduling/event_calendar.html:82 +#: env/lib/python3.9/site-packages/django/utils/dates.py:6 +#: templates/scheduling/event_calendar.html:82 msgid "Friday" msgstr "vrijdag" -#: env/lib/python3.9/site-packages/django/utils/dates.py:7 templates/scheduling/event_calendar.html:82 +#: env/lib/python3.9/site-packages/django/utils/dates.py:7 +#: templates/scheduling/event_calendar.html:82 msgid "Saturday" msgstr "zaterdag" -#: env/lib/python3.9/site-packages/django/utils/dates.py:7 templates/scheduling/event_calendar.html:81 +#: env/lib/python3.9/site-packages/django/utils/dates.py:7 +#: templates/scheduling/event_calendar.html:81 msgid "Sunday" msgstr "zondag" -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:83 +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 +#: templates/scheduling/event_calendar.html:83 msgid "Mon" msgstr "ma" -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:83 +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 +#: templates/scheduling/event_calendar.html:83 msgid "Tue" msgstr "di" -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:83 +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 +#: templates/scheduling/event_calendar.html:83 msgid "Wed" msgstr "wo" -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:84 +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 +#: templates/scheduling/event_calendar.html:84 msgid "Thu" msgstr "do" -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 templates/scheduling/event_calendar.html:84 +#: env/lib/python3.9/site-packages/django/utils/dates.py:10 +#: templates/scheduling/event_calendar.html:84 msgid "Fri" msgstr "vr" -#: env/lib/python3.9/site-packages/django/utils/dates.py:11 templates/scheduling/event_calendar.html:84 +#: env/lib/python3.9/site-packages/django/utils/dates.py:11 +#: templates/scheduling/event_calendar.html:84 msgid "Sat" msgstr "za" -#: env/lib/python3.9/site-packages/django/utils/dates.py:11 templates/scheduling/event_calendar.html:83 +#: env/lib/python3.9/site-packages/django/utils/dates.py:11 +#: templates/scheduling/event_calendar.html:83 msgid "Sun" msgstr "zo" -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 +#: templates/scheduling/event_calendar.html:75 msgid "January" msgstr "januari" -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 +#: templates/scheduling/event_calendar.html:75 msgid "February" msgstr "februari" -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 +#: templates/scheduling/event_calendar.html:75 msgid "March" msgstr "maart" -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:75 +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 +#: templates/scheduling/event_calendar.html:75 msgid "April" msgstr "april" -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:76 templates/scheduling/event_calendar.html:79 +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 +#: templates/scheduling/event_calendar.html:76 +#: templates/scheduling/event_calendar.html:79 msgid "May" msgstr "mei" -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 templates/scheduling/event_calendar.html:76 +#: env/lib/python3.9/site-packages/django/utils/dates.py:14 +#: templates/scheduling/event_calendar.html:76 msgid "June" msgstr "juni" -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:76 +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 +#: templates/scheduling/event_calendar.html:76 msgid "July" msgstr "juli" -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:76 +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 +#: templates/scheduling/event_calendar.html:76 msgid "August" msgstr "augustus" -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:77 +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 +#: templates/scheduling/event_calendar.html:77 msgid "September" msgstr "september" -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:77 +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 +#: templates/scheduling/event_calendar.html:77 msgid "October" msgstr "oktober" -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 templates/scheduling/event_calendar.html:77 +#: env/lib/python3.9/site-packages/django/utils/dates.py:15 +#: templates/scheduling/event_calendar.html:77 msgid "November" msgstr "november" -#: env/lib/python3.9/site-packages/django/utils/dates.py:16 templates/scheduling/event_calendar.html:77 +#: env/lib/python3.9/site-packages/django/utils/dates.py:16 +#: templates/scheduling/event_calendar.html:77 msgid "December" msgstr "december" @@ -1812,7 +2005,8 @@ msgid "or" msgstr "" #. Translators: This string is used as a separator between list elements -#: env/lib/python3.9/site-packages/django/utils/text.py:252 env/lib/python3.9/site-packages/django/utils/timesince.py:83 +#: env/lib/python3.9/site-packages/django/utils/text.py:252 +#: env/lib/python3.9/site-packages/django/utils/timesince.py:83 msgid ", " msgstr "" @@ -1873,23 +2067,40 @@ msgid "CSRF verification failed. Request aborted." msgstr "" #: env/lib/python3.9/site-packages/django/views/csrf.py:115 -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 required for security reasons, to ensure that your browser is not being hijacked by third parties." +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 " +"required for security reasons, to ensure that your browser is not being " +"hijacked by third parties." msgstr "" #: env/lib/python3.9/site-packages/django/views/csrf.py:120 -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-origin' requests." +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-" +"origin' requests." msgstr "" #: env/lib/python3.9/site-packages/django/views/csrf.py:124 -msgid "If you are using the tag or including the 'Referrer-Policy: no-referrer' header, please remove them. The CSRF protection requires the 'Referer' header to do strict referer checking. If you're concerned about privacy, use alternatives like for links to third-party sites." +msgid "" +"If you are using the tag or " +"including the 'Referrer-Policy: no-referrer' header, please remove them. The " +"CSRF protection requires the 'Referer' header to do strict referer checking. " +"If you're concerned about privacy, use alternatives like for links to third-party sites." msgstr "" #: env/lib/python3.9/site-packages/django/views/csrf.py:132 -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 that your browser is not being hijacked by third parties." +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 " +"that your browser is not being hijacked by third parties." msgstr "" #: env/lib/python3.9/site-packages/django/views/csrf.py:137 -msgid "If you have configured your browser to disable cookies, please re-enable them, at least for this site, or for 'same-origin' requests." +msgid "" +"If you have configured your browser to disable cookies, please re-enable " +"them, at least for this site, or for 'same-origin' requests." msgstr "" #: env/lib/python3.9/site-packages/django/views/csrf.py:142 @@ -1900,7 +2111,9 @@ msgstr "" msgid "No year specified" msgstr "" -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:61 env/lib/python3.9/site-packages/django/views/generic/dates.py:111 env/lib/python3.9/site-packages/django/views/generic/dates.py:208 +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:61 +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:111 +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:208 msgid "Date out of range" msgstr "" @@ -1916,14 +2129,17 @@ msgstr "" msgid "No week specified" msgstr "" -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:338 env/lib/python3.9/site-packages/django/views/generic/dates.py:367 +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:338 +#: env/lib/python3.9/site-packages/django/views/generic/dates.py:367 #, python-format msgid "No %(verbose_name_plural)s available" msgstr "" #: env/lib/python3.9/site-packages/django/views/generic/dates.py:589 #, python-format -msgid "Future %(verbose_name_plural)s not available because %(class_name)s.allow_future is False." +msgid "" +"Future %(verbose_name_plural)s not available because %(class_name)s." +"allow_future is False." msgstr "" #: env/lib/python3.9/site-packages/django/views/generic/dates.py:623 @@ -1970,7 +2186,9 @@ msgstr "" #: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:345 #, python-format -msgid "View release notes for Django %(version)s" +msgid "" +"View release notes for Django %(version)s" msgstr "" #: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:367 @@ -1979,7 +2197,11 @@ msgstr "" #: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:368 #, python-format -msgid "You are seeing this page because DEBUG=True is in your settings file and you have not configured any URLs." +msgid "" +"You are seeing this page because DEBUG=True is in your settings file and you have not " +"configured any URLs." msgstr "" #: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:383 @@ -2006,7 +2228,8 @@ msgstr "" msgid "Connect, get help, or contribute" msgstr "" -#: env/lib/python3.9/site-packages/jsonfield/fields.py:42 env/lib/python3.9/site-packages/jsonfield/forms.py:22 +#: env/lib/python3.9/site-packages/jsonfield/fields.py:42 +#: env/lib/python3.9/site-packages/jsonfield/forms.py:22 #, fuzzy #| msgid "Enter a valid username" msgid "Enter valid JSON." @@ -2091,7 +2314,9 @@ msgstr "individuele bijdragers" msgid "Local login" msgstr "Lokale login" -#: templates/base_app.html:21 templates/scheduling/event_calendar.html:3 templates/scheduling/event_list.html:3 templates/scheduling/event_list.html:8 +#: templates/base_app.html:21 templates/scheduling/event_calendar.html:3 +#: templates/scheduling/event_list.html:3 +#: templates/scheduling/event_list.html:8 msgid "Planning" msgstr "Planning" @@ -2107,7 +2332,8 @@ msgstr "Kalender" msgid "Personal schedule" msgstr "Tappersrooster" -#: templates/base_app.html:31 templates/scheduling/event_matrix.html:3 templates/scheduling/event_matrix.html:8 +#: templates/base_app.html:31 templates/scheduling/event_matrix.html:3 +#: templates/scheduling/event_matrix.html:8 msgid "Availability matrix" msgstr "Beschikbaarheidsmatrix" @@ -2123,23 +2349,32 @@ msgstr "Mailsjabonen" msgid "Users" msgstr "Gebruikers" -#: templates/base_app.html:52 templates/billing/productgroup_list.html:3 templates/billing/productgroup_list.html:8 +#: templates/base_app.html:52 templates/billing/productgroup_list.html:3 +#: templates/billing/productgroup_list.html:8 msgid "Product groups" msgstr "Productgroepen" -#: templates/base_app.html:53 templates/billing/pricegroup_list.html:3 templates/billing/pricegroup_list.html:8 +#: templates/base_app.html:53 templates/billing/pricegroup_list.html:3 +#: templates/billing/pricegroup_list.html:8 msgid "Price groups" msgstr "Prijsgroepen" -#: templates/base_app.html:54 templates/billing/permanentproduct_list.html:3 templates/billing/permanentproduct_list.html:8 templates/billing/productgroup_detail.html:24 +#: templates/base_app.html:54 templates/billing/permanentproduct_list.html:3 +#: templates/billing/permanentproduct_list.html:8 +#: templates/billing/productgroup_detail.html:24 msgid "Products" msgstr "Producten" -#: templates/base_app.html:55 templates/billing/sellingprice_list.html:3 templates/billing/sellingprice_list.html:7 +#: templates/base_app.html:55 templates/billing/sellingprice_list.html:3 +#: templates/billing/sellingprice_list.html:7 msgid "Price matrix" msgstr "Prijsmatrix" -#: templates/base_app.html:57 templates/billing/order_detail.html:3 templates/billing/order_detail.html:8 templates/billing/order_detail.html:81 templates/consumption/consumptionform_detail.html:14 templates/scheduling/event_detail.html:20 +#: templates/base_app.html:57 templates/billing/order_detail.html:3 +#: templates/billing/order_detail.html:8 templates/billing/order_detail.html:60 +#: templates/billing/order_detail.html:130 +#: templates/consumption/consumptionform_detail.html:17 +#: templates/scheduling/event_detail.html:23 msgid "Orders" msgstr "Transacties" @@ -2147,11 +2382,14 @@ msgstr "Transacties" msgid "Management" msgstr "Beheer" -#: templates/base_app.html:73 templates/consumption/consumptionproduct_list.html:3 templates/consumption/consumptionproduct_list.html:8 +#: templates/base_app.html:73 +#: templates/consumption/consumptionproduct_list.html:3 +#: templates/consumption/consumptionproduct_list.html:8 msgid "Consumption products" msgstr "Voorraadproducten" -#: templates/base_app.html:74 templates/consumption/consumptionform_list.html:3 templates/consumption/consumptionform_list.html:8 +#: templates/base_app.html:74 templates/consumption/consumptionform_list.html:3 +#: templates/consumption/consumptionform_list.html:8 msgid "Consumption forms" msgstr "Verbruiksformulieren" @@ -2175,27 +2413,74 @@ msgstr "Uitloggen" msgid "Login with UTwente" msgstr "Inloggen met UTwente" -#: templates/billing/order_detail.html:13 templates/consumption/dcf.html:4 templates/consumption/dcf_check.html:3 templates/consumption/dcf_finished.html:3 templates/consumption/pdf/page.html:6 templates/scheduling/event_detail.html:14 +#: templates/billing/order_detail.html:13 templates/consumption/dcf.html:4 +#: templates/consumption/dcf_check.html:3 +#: templates/consumption/dcf_finished.html:3 +#: templates/consumption/pdf/page.html:6 +#: templates/scheduling/event_detail.html:14 msgid "Consumption form" msgstr "Verbruiksformulier" -#: templates/billing/order_detail.html:18 templates/consumption/consumptionform_detail.html:19 +#: templates/billing/order_detail.html:18 +#: templates/consumption/consumptionform_detail.html:23 msgid "Event information" msgstr "Evenementinformatie" -#: templates/billing/order_detail.html:25 templates/billing/order_month.html:16 templates/billing/payment_detail.html:22 templates/billing/temporaryproduct_detail.html:31 templates/consumption/consumptionform_list.html:33 templates/consumption/consumptionform_list.html:70 templates/consumption/pdf/page.html:19 templates/organization/membership_detail.html:67 templates/profile/expenditure_list.html:16 templates/profile/profile.html:69 templates/scheduling/event_bartender_availability_form.html:12 +#: templates/billing/order_detail.html:25 templates/billing/order_month.html:16 +#: templates/billing/payment_detail.html:22 +#: templates/billing/temporaryproduct_detail.html:31 +#: templates/consumption/consumptionform_list.html:33 +#: templates/consumption/consumptionform_list.html:70 +#: templates/consumption/pdf/page.html:19 +#: templates/organization/membership_detail.html:67 +#: templates/profile/expenditure_list.html:16 templates/profile/profile.html:69 +#: templates/scheduling/event_bartender_availability_form.html:12 msgid "Event" msgstr "Activiteit" -#: templates/billing/order_detail.html:28 templates/billing/order_export_result.html:35 templates/billing/order_list.html:47 templates/billing/permanentproduct_detail.html:27 templates/billing/permanentproduct_list.html:21 templates/billing/pricegroup_detail.html:27 templates/billing/pricegroup_list.html:20 templates/billing/productgroup_list.html:20 templates/billing/temporaryproduct_detail.html:27 templates/consumption/consumptionproduct_list.html:25 templates/consumption/consumptionproduct_list.html:65 templates/organization/membership_detail.html:45 templates/organization/membership_iva.html:15 templates/organization/membership_list.html:26 templates/scheduling/availability_list.html:20 templates/scheduling/event_bartender.html:16 templates/scheduling/event_detail.html:75 templates/scheduling/event_list.html:39 templates/scheduling/mailtemplate_detail.html:20 templates/scheduling/mailtemplate_list.html:15 +#: templates/billing/order_detail.html:28 +#: templates/billing/order_export_result.html:35 +#: templates/billing/order_list.html:47 +#: templates/billing/permanentproduct_detail.html:27 +#: templates/billing/permanentproduct_list.html:21 +#: templates/billing/pricegroup_detail.html:27 +#: templates/billing/pricegroup_list.html:20 +#: templates/billing/productgroup_list.html:20 +#: templates/billing/temporaryproduct_detail.html:27 +#: templates/consumption/consumptionproduct_list.html:25 +#: templates/consumption/consumptionproduct_list.html:65 +#: templates/organization/membership_detail.html:45 +#: templates/organization/membership_iva.html:15 +#: templates/organization/membership_list.html:26 +#: templates/scheduling/availability_list.html:20 +#: templates/scheduling/event_bartender.html:16 +#: templates/scheduling/event_detail.html:79 +#: templates/scheduling/event_list.html:39 +#: templates/scheduling/mailtemplate_detail.html:20 +#: templates/scheduling/mailtemplate_list.html:15 msgid "Name" msgstr "Naam" -#: templates/billing/order_detail.html:32 templates/billing/order_export_result.html:34 templates/billing/order_list.html:46 templates/billing/order_month.html:15 templates/consumption/consumptionform_detail.html:39 templates/consumption/consumptionform_list.html:30 templates/consumption/consumptionform_list.html:67 templates/consumption/dcf_check.html:30 templates/consumption/pdf/page.html:15 templates/organization/membership_detail.html:66 templates/profile/expenditure_list.html:15 templates/scheduling/event_bartender.html:13 templates/scheduling/event_list.html:35 +#: templates/billing/order_detail.html:32 +#: templates/billing/order_export_result.html:34 +#: templates/billing/order_list.html:46 templates/billing/order_month.html:15 +#: templates/consumption/consumptionform_detail.html:43 +#: templates/consumption/consumptionform_list.html:30 +#: templates/consumption/consumptionform_list.html:67 +#: templates/consumption/dcf_check.html:30 +#: templates/consumption/pdf/page.html:15 +#: templates/organization/membership_detail.html:66 +#: templates/profile/expenditure_list.html:15 +#: templates/scheduling/event_bartender.html:13 +#: templates/scheduling/event_list.html:35 msgid "Date" msgstr "Datum" -#: templates/billing/order_detail.html:36 templates/consumption/consumptionform_detail.html:47 templates/consumption/dcf_check.html:38 templates/scheduling/event_detail.html:44 templates/scheduling/event_form.html:23 +#: templates/billing/order_detail.html:36 +#: templates/consumption/consumptionform_detail.html:51 +#: templates/consumption/dcf_check.html:38 +#: templates/scheduling/event_detail.html:48 +#: templates/scheduling/event_form.html:23 msgid "Organizer" msgstr "Organisator" @@ -2203,11 +2488,17 @@ msgstr "Organisator" msgid "Visitors" msgstr "Bezoekers" -#: templates/billing/order_detail.html:47 templates/billing/order_list.html:49 templates/profile/profile.html:29 +#: templates/billing/order_detail.html:47 templates/billing/order_list.html:49 +#: templates/profile/profile.html:29 msgid "Transactions" msgstr "Transacties" -#: templates/billing/order_detail.html:51 templates/billing/order_detail.html:63 templates/billing/order_export_result.html:18 templates/billing/order_export_result.html:36 templates/billing/order_list.html:27 templates/billing/order_list.html:50 templates/billing/order_month.html:17 templates/billing/order_year.html:16 +#: templates/billing/order_detail.html:51 +#: templates/billing/order_detail.html:75 +#: templates/billing/order_export_result.html:18 +#: templates/billing/order_export_result.html:36 +#: templates/billing/order_list.html:27 templates/billing/order_list.html:50 +#: templates/billing/order_month.html:17 templates/billing/order_year.html:16 msgid "Revenue" msgstr "Omzet" @@ -2215,36 +2506,56 @@ msgstr "Omzet" msgid "Sales" msgstr "Verkopen" -#: templates/billing/order_detail.html:62 templates/billing/payment_detail.html:40 templates/billing/permanentproduct_detail.html:8 templates/consumption/partials/unit_consumption.html:13 templates/consumption/partials/weight_consumption.html:13 +#: templates/billing/order_detail.html:64 +#: templates/billing/order_detail.html:95 +msgid "Written off" +msgstr "Afgeschreven" + +#: templates/billing/order_detail.html:74 +#: templates/billing/order_detail.html:94 +#: templates/billing/payment_detail.html:40 +#: templates/billing/permanentproduct_detail.html:8 +#: templates/consumption/partials/unit_consumption.html:13 +#: templates/consumption/partials/weight_consumption.html:13 msgid "Product" msgstr "Product" -#: templates/billing/order_detail.html:86 +#: templates/billing/order_detail.html:135 msgid "ID" msgstr "ID" -#: templates/billing/order_detail.html:87 templates/billing/payment_detail.html:14 +#: templates/billing/order_detail.html:136 +#: templates/billing/payment_detail.html:14 msgid "Debtor" msgstr "Debiteur" -#: templates/billing/order_detail.html:88 templates/billing/payment_detail.html:26 templates/profile/expenditure_detail.html:14 +#: templates/billing/order_detail.html:137 +#: templates/billing/payment_detail.html:26 +#: templates/profile/expenditure_detail.html:14 msgid "Amount" msgstr "Bedrag" -#: templates/billing/order_detail.html:89 templates/billing/payment_detail.html:18 templates/profile/expenditure_detail.html:13 +#: templates/billing/order_detail.html:138 +#: templates/billing/payment_detail.html:18 +#: templates/profile/expenditure_detail.html:13 msgid "Timestamp" msgstr "Tijdstempel" -#: templates/billing/order_detail.html:90 +#: templates/billing/order_detail.html:139 msgid "Synchronized" msgstr "Gesynchroniseerd" -#: templates/billing/order_export_form.html:3 templates/billing/order_export_form.html:7 +#: templates/billing/order_export_form.html:3 +#: templates/billing/order_export_form.html:7 #, python-format msgid "Export transactions of %(organization)s" msgstr "Exporteer transacties van %(organization)s" -#: templates/billing/order_export_result.html:3 templates/billing/order_export_result.html:11 templates/billing/order_list.html:3 templates/billing/order_list.html:8 templates/billing/order_month.html:3 templates/billing/order_month.html:8 templates/billing/order_year.html:3 templates/billing/order_year.html:8 +#: templates/billing/order_export_result.html:3 +#: templates/billing/order_export_result.html:11 +#: templates/billing/order_list.html:3 templates/billing/order_list.html:8 +#: templates/billing/order_month.html:3 templates/billing/order_month.html:8 +#: templates/billing/order_year.html:3 templates/billing/order_year.html:8 #, python-format msgid "Transactions of %(organization)s" msgstr "Transacties van %(organization)s" @@ -2257,7 +2568,8 @@ msgstr "Samenvatting" msgid "Specification" msgstr "Specificatie" -#: templates/billing/order_list.html:20 templates/general/about.html:39 templates/profile/profile.html:25 +#: templates/billing/order_list.html:20 templates/general/about.html:39 +#: templates/profile/profile.html:25 msgid "Stats" msgstr "Statistieken" @@ -2265,7 +2577,13 @@ msgstr "Statistieken" msgid "The amount of unique debtors this event" msgstr "Het aantal unieke debiteuren deze activiteit" -#: templates/billing/order_list.html:51 templates/billing/order_month.html:18 templates/billing/pricegroup_confirm_delete.html:3 templates/billing/pricegroup_detail.html:3 templates/billing/pricegroup_detail.html:8 templates/billing/productgroup_detail.html:29 templates/billing/productgroup_detail.html:71 templates/billing/sellingprice_list.html:14 +#: templates/billing/order_list.html:51 templates/billing/order_month.html:18 +#: templates/billing/pricegroup_confirm_delete.html:3 +#: templates/billing/pricegroup_detail.html:3 +#: templates/billing/pricegroup_detail.html:8 +#: templates/billing/productgroup_detail.html:29 +#: templates/billing/productgroup_detail.html:71 +#: templates/billing/sellingprice_list.html:14 msgid "Price group" msgstr "Prijsgroep" @@ -2274,15 +2592,20 @@ msgstr "Prijsgroep" msgid "%(organization)s hasn't used Alexia Billing yet!" msgstr "%(organization)s heeft Alexia Financieel nog niet in gebruik!" -#: templates/billing/payment_detail.html:3 templates/billing/payment_detail.html:7 +#: templates/billing/payment_detail.html:3 +#: templates/billing/payment_detail.html:7 msgid "Payment" msgstr "Betaling" -#: templates/billing/payment_detail.html:11 templates/billing/pricegroup_detail.html:24 templates/consumption/consumptionform_detail.html:36 templates/scheduling/event_detail.html:34 +#: templates/billing/payment_detail.html:11 +#: templates/billing/pricegroup_detail.html:24 +#: templates/consumption/consumptionform_detail.html:40 +#: templates/scheduling/event_detail.html:38 msgid "Details" msgstr "Details" -#: templates/billing/payment_detail.html:30 templates/profile/expenditure_detail.html:15 +#: templates/billing/payment_detail.html:30 +#: templates/profile/expenditure_detail.html:15 msgid "Handled by" msgstr "Afgehandeld door" @@ -2290,11 +2613,16 @@ msgstr "Afgehandeld door" msgid "Items" msgstr "Specificatie" -#: templates/billing/payment_detail.html:41 templates/billing/pricegroup_detail.html:43 templates/billing/productgroup_detail.html:72 templates/billing/temporaryproduct_detail.html:35 templates/scheduling/event_detail.html:76 +#: templates/billing/payment_detail.html:41 +#: templates/billing/pricegroup_detail.html:43 +#: templates/billing/productgroup_detail.html:72 +#: templates/billing/temporaryproduct_detail.html:35 +#: templates/scheduling/event_detail.html:80 msgid "Price" msgstr "Prijs" -#: templates/billing/permanentproduct_confirm_delete.html:3 templates/billing/permanentproduct_confirm_delete.html:7 +#: templates/billing/permanentproduct_confirm_delete.html:3 +#: templates/billing/permanentproduct_confirm_delete.html:7 msgid "Delete product" msgstr "Product verwijderen" @@ -2303,27 +2631,57 @@ msgstr "Product verwijderen" msgid "Are you sure you want to delete %(product)s from %(productgroup)s?" msgstr "Weet je zeker dat je %(product)s wil verwijderen van %(productgroup)s?" -#: templates/billing/permanentproduct_detail.html:13 templates/billing/permanentproduct_list.html:40 templates/billing/pricegroup_detail.html:13 templates/billing/pricegroup_detail.html:55 templates/billing/pricegroup_list.html:31 templates/billing/productgroup_detail.html:13 templates/billing/productgroup_detail.html:40 templates/billing/productgroup_detail.html:84 templates/billing/productgroup_list.html:31 templates/billing/temporaryproduct_detail.html:13 templates/consumption/consumptionform_detail.html:24 templates/consumption/consumptionproduct_list.html:47 templates/consumption/consumptionproduct_list.html:87 templates/organization/membership_list.html:85 templates/scheduling/availability_list.html:35 templates/scheduling/event_detail.html:25 templates/scheduling/event_detail.html:95 templates/scheduling/mailtemplate_detail.html:13 templates/scheduling/mailtemplate_list.html:30 +#: templates/billing/permanentproduct_detail.html:13 +#: templates/billing/permanentproduct_list.html:40 +#: templates/billing/pricegroup_detail.html:13 +#: templates/billing/pricegroup_detail.html:55 +#: templates/billing/pricegroup_list.html:31 +#: templates/billing/productgroup_detail.html:13 +#: templates/billing/productgroup_detail.html:40 +#: templates/billing/productgroup_detail.html:84 +#: templates/billing/productgroup_list.html:31 +#: templates/billing/temporaryproduct_detail.html:13 +#: templates/consumption/consumptionform_detail.html:28 +#: templates/consumption/consumptionproduct_list.html:47 +#: templates/consumption/consumptionproduct_list.html:87 +#: templates/organization/membership_list.html:85 +#: templates/scheduling/availability_list.html:35 +#: templates/scheduling/event_detail.html:29 +#: templates/scheduling/event_detail.html:99 +#: templates/scheduling/mailtemplate_detail.html:13 +#: templates/scheduling/mailtemplate_list.html:30 msgid "Modify" msgstr "Wijzigen" -#: templates/billing/permanentproduct_detail.html:24 templates/billing/temporaryproduct_detail.html:24 +#: templates/billing/permanentproduct_detail.html:24 +#: templates/billing/temporaryproduct_detail.html:24 msgid "Product information" msgstr "Productinformatie" -#: templates/billing/permanentproduct_detail.html:35 templates/billing/permanentproduct_list.html:22 templates/billing/pricegroup_detail.html:42 templates/billing/productgroup_confirm_delete.html:3 templates/billing/productgroup_confirm_delete.html:8 templates/billing/productgroup_detail.html:3 templates/billing/productgroup_detail.html:8 templates/billing/sellingprice_list.html:13 +#: templates/billing/permanentproduct_detail.html:35 +#: templates/billing/permanentproduct_list.html:22 +#: templates/billing/pricegroup_detail.html:42 +#: templates/billing/productgroup_confirm_delete.html:3 +#: templates/billing/productgroup_confirm_delete.html:8 +#: templates/billing/productgroup_detail.html:3 +#: templates/billing/productgroup_detail.html:8 +#: templates/billing/sellingprice_list.html:13 msgid "Product group" msgstr "Productgroep" -#: templates/billing/permanentproduct_detail.html:41 templates/billing/temporaryproduct_detail.html:41 +#: templates/billing/permanentproduct_detail.html:41 +#: templates/billing/temporaryproduct_detail.html:41 msgid "Juliana settings" msgstr "Juliana-instellingen" -#: templates/billing/permanentproduct_detail.html:44 templates/billing/permanentproduct_list.html:23 templates/scheduling/availability_list.html:22 +#: templates/billing/permanentproduct_detail.html:44 +#: templates/billing/permanentproduct_list.html:23 +#: templates/scheduling/availability_list.html:22 msgid "Position" msgstr "Positie" -#: templates/billing/permanentproduct_detail.html:56 templates/billing/temporaryproduct_detail.html:52 +#: templates/billing/permanentproduct_detail.html:56 +#: templates/billing/temporaryproduct_detail.html:52 msgid "Color example" msgstr "Kleurvoorbeeld" @@ -2331,23 +2689,43 @@ msgstr "Kleurvoorbeeld" msgid "Shortcut" msgstr "Shortcut" -#: templates/billing/permanentproduct_form.html:5 templates/billing/permanentproduct_form.html:15 +#: templates/billing/permanentproduct_form.html:5 +#: templates/billing/permanentproduct_form.html:15 msgid "Edit product" msgstr "Wijzig product" -#: templates/billing/permanentproduct_form.html:7 templates/billing/permanentproduct_form.html:17 +#: templates/billing/permanentproduct_form.html:7 +#: templates/billing/permanentproduct_form.html:17 msgid "New product" msgstr "Nieuw product" -#: templates/billing/permanentproduct_list.html:12 templates/billing/pricegroup_detail.html:72 templates/billing/pricegroup_list.html:12 templates/billing/productgroup_detail.html:57 templates/billing/productgroup_detail.html:101 templates/billing/productgroup_list.html:12 templates/scheduling/availability_list.html:12 templates/scheduling/event_detail.html:114 +#: templates/billing/permanentproduct_list.html:12 +#: templates/billing/pricegroup_detail.html:72 +#: templates/billing/pricegroup_list.html:12 +#: templates/billing/productgroup_detail.html:57 +#: templates/billing/productgroup_detail.html:101 +#: templates/billing/productgroup_list.html:12 +#: templates/scheduling/availability_list.html:12 +#: templates/scheduling/event_detail.html:118 msgid "Add" msgstr "Toevoegen" -#: templates/billing/permanentproduct_list.html:24 templates/billing/pricegroup_detail.html:44 templates/billing/pricegroup_list.html:21 templates/billing/productgroup_detail.html:30 templates/billing/productgroup_detail.html:73 templates/billing/productgroup_list.html:21 templates/consumption/consumptionproduct_list.html:27 templates/consumption/consumptionproduct_list.html:67 templates/scheduling/availability_list.html:23 templates/scheduling/event_detail.html:78 templates/scheduling/mailtemplate_list.html:18 +#: templates/billing/permanentproduct_list.html:24 +#: templates/billing/pricegroup_detail.html:44 +#: templates/billing/pricegroup_list.html:21 +#: templates/billing/productgroup_detail.html:30 +#: templates/billing/productgroup_detail.html:73 +#: templates/billing/productgroup_list.html:21 +#: templates/consumption/consumptionproduct_list.html:27 +#: templates/consumption/consumptionproduct_list.html:67 +#: templates/scheduling/availability_list.html:23 +#: templates/scheduling/event_detail.html:82 +#: templates/scheduling/mailtemplate_list.html:18 msgid "Actions" msgstr "Acties" -#: templates/billing/permanentproduct_list.html:50 templates/billing/productgroup_detail.html:50 +#: templates/billing/permanentproduct_list.html:50 +#: templates/billing/productgroup_detail.html:50 msgid "No products defined." msgstr "Geen producten gedefinieerd." @@ -2356,22 +2734,29 @@ msgid "Delete price group" msgstr "Verwijder prijsgroep" #: templates/billing/pricegroup_confirm_delete.html:13 -msgid "Are you sure you want to delete this price group? The following prices will also be deleted:" -msgstr "Weet je zeker dat je deze prijsgroep wil verwijderen? De volgende prijzen worden ook verwijderd:" +msgid "" +"Are you sure you want to delete this price group? The following prices will " +"also be deleted:" +msgstr "" +"Weet je zeker dat je deze prijsgroep wil verwijderen? De volgende prijzen " +"worden ook verwijderd:" #: templates/billing/pricegroup_confirm_delete.html:17 msgid "Events with this price group need a new pricegroup. Please choose one." msgstr "Activiteiten met deze prijsgroep moeten een nieuwe prijsgroep krijgen." -#: templates/billing/pricegroup_detail.html:37 templates/billing/productgroup_detail.html:66 +#: templates/billing/pricegroup_detail.html:37 +#: templates/billing/productgroup_detail.html:66 msgid "Prices" msgstr "Prijzen" -#: templates/billing/pricegroup_detail.html:65 templates/billing/productgroup_detail.html:94 +#: templates/billing/pricegroup_detail.html:65 +#: templates/billing/productgroup_detail.html:94 msgid "No prices defined." msgstr "Geen prijzen gedefinieerd." -#: templates/billing/pricegroup_form.html:5 templates/billing/pricegroup_form.html:15 +#: templates/billing/pricegroup_form.html:5 +#: templates/billing/pricegroup_form.html:15 msgid "Edit price group" msgstr "Wijzig prijsgroep" @@ -2380,14 +2765,20 @@ msgid "No price groups defined." msgstr "Geen prijsgroepen gedefinieerd." #: templates/billing/productgroup_confirm_delete.html:14 -msgid "Are you sure you want to delete this product group? The following products will also be deleted:" -msgstr "Weet je zeker dat je deze productgroep wil verwijderen? De volgende producten worden ook verwijderd:" +msgid "" +"Are you sure you want to delete this product group? The following products " +"will also be deleted:" +msgstr "" +"Weet je zeker dat je deze productgroep wil verwijderen? De volgende " +"producten worden ook verwijderd:" -#: templates/billing/productgroup_form.html:5 templates/billing/productgroup_form.html:15 +#: templates/billing/productgroup_form.html:5 +#: templates/billing/productgroup_form.html:15 msgid "Edit product group" msgstr "Wijzig productgroep" -#: templates/billing/productgroup_form.html:7 templates/billing/productgroup_form.html:17 +#: templates/billing/productgroup_form.html:7 +#: templates/billing/productgroup_form.html:17 msgid "New product group" msgstr "Nieuwe productgroep" @@ -2395,7 +2786,8 @@ msgstr "Nieuwe productgroep" msgid "No product groups defined." msgstr "Geen productgroepen gedefinieerd." -#: templates/billing/sellingprice_confirm_delete.html:3 templates/billing/sellingprice_confirm_delete.html:7 +#: templates/billing/sellingprice_confirm_delete.html:3 +#: templates/billing/sellingprice_confirm_delete.html:7 msgid "Delete selling price" msgstr "Verwijder verkoopprijs" @@ -2404,15 +2796,18 @@ msgstr "Verwijder verkoopprijs" msgid "Are you sure you want to delete %(price)s?" msgstr "Weet je zeker dat je %(price)s wil verwijderen?" -#: templates/billing/sellingprice_form.html:5 templates/billing/sellingprice_form.html:15 +#: templates/billing/sellingprice_form.html:5 +#: templates/billing/sellingprice_form.html:15 msgid "Edit selling price" msgstr "Wijzig verkoopprijs" -#: templates/billing/sellingprice_form.html:7 templates/billing/sellingprice_form.html:17 +#: templates/billing/sellingprice_form.html:7 +#: templates/billing/sellingprice_form.html:17 msgid "New selling price" msgstr "Nieuwe verkoopprijs" -#: templates/billing/temporaryproduct_confirm_delete.html:3 templates/billing/temporaryproduct_confirm_delete.html:7 +#: templates/billing/temporaryproduct_confirm_delete.html:3 +#: templates/billing/temporaryproduct_confirm_delete.html:7 msgid "Delete temporary product" msgstr "Verwijder tijdelijk product" @@ -2425,55 +2820,77 @@ msgstr "Weet je zeker dat je %(product)s wil verwijderen van %(event)s?" msgid "Temporary product" msgstr "Tijdelijk product" -#: templates/billing/temporaryproduct_form.html:5 templates/billing/temporaryproduct_form.html:15 +#: templates/billing/temporaryproduct_form.html:5 +#: templates/billing/temporaryproduct_form.html:15 msgid "Edit temporary product" msgstr "Wijzig tijdelijk product" -#: templates/billing/temporaryproduct_form.html:7 templates/billing/temporaryproduct_form.html:17 +#: templates/billing/temporaryproduct_form.html:7 +#: templates/billing/temporaryproduct_form.html:17 msgid "New temporary product" msgstr "Nieuw tijdelijk product" -#: templates/consumption/consumptionform_detail.html:29 templates/consumption/consumptionform_list.html:104 +#: templates/consumption/consumptionform_detail.html:33 +#: templates/consumption/consumptionform_list.html:104 msgid "PDF" msgstr "PDF" -#: templates/consumption/consumptionform_detail.html:43 templates/consumption/consumptionform_list.html:32 templates/consumption/consumptionform_list.html:69 templates/consumption/dcf_check.html:34 templates/consumption/pdf/page.html:11 templates/scheduling/event_bartender.html:15 templates/scheduling/event_calendar.html:25 templates/scheduling/event_detail.html:52 templates/scheduling/event_list.html:38 +#: templates/consumption/consumptionform_detail.html:47 +#: templates/consumption/consumptionform_list.html:32 +#: templates/consumption/consumptionform_list.html:69 +#: templates/consumption/dcf_check.html:34 +#: templates/consumption/pdf/page.html:11 +#: templates/scheduling/event_bartender.html:15 +#: templates/scheduling/event_calendar.html:25 +#: templates/scheduling/event_detail.html:56 +#: templates/scheduling/event_list.html:38 msgid "Location" msgstr "Locatie" -#: templates/consumption/consumptionform_detail.html:51 templates/consumption/consumptionform_list.html:71 +#: templates/consumption/consumptionform_detail.html:55 +#: templates/consumption/consumptionform_list.html:71 msgid "Status" msgstr "Status" -#: templates/consumption/consumptionform_detail.html:54 templates/consumption/consumptionform_list.html:88 +#: templates/consumption/consumptionform_detail.html:58 +#: templates/consumption/consumptionform_list.html:88 msgid "Completed" msgstr "Ingezonden" -#: templates/consumption/consumptionform_detail.html:56 templates/consumption/consumptionform_list.html:90 +#: templates/consumption/consumptionform_detail.html:60 +#: templates/consumption/consumptionform_list.html:90 msgid "Pending" msgstr "In afwachting" -#: templates/consumption/consumptionform_detail.html:63 templates/consumption/pdf/page.html:75 +#: templates/consumption/consumptionform_detail.html:67 +#: templates/consumption/pdf/page.html:75 msgid "Signed off by" msgstr "Ondertekend door" -#: templates/consumption/consumptionform_detail.html:66 templates/consumption/pdf/page.html:75 +#: templates/consumption/consumptionform_detail.html:70 +#: templates/consumption/pdf/page.html:75 msgid "on" msgstr "op" -#: templates/consumption/consumptionform_detail.html:68 templates/consumption/pdf/page.html:75 +#: templates/consumption/consumptionform_detail.html:72 +#: templates/consumption/pdf/page.html:75 msgid "at" msgstr "om" -#: templates/consumption/consumptionform_detail.html:84 templates/consumption/dcf_check.html:66 templates/consumption/partials/weight_consumption.html:15 templates/consumption/pdf/page.html:41 +#: templates/consumption/consumptionform_detail.html:88 +#: templates/consumption/dcf_check.html:66 +#: templates/consumption/partials/weight_consumption.html:15 +#: templates/consumption/pdf/page.html:41 msgid "Kegs changed" msgstr "Fusten verwisseld" -#: templates/consumption/consumptionform_detail.html:85 templates/consumption/dcf_check.html:67 +#: templates/consumption/consumptionform_detail.html:89 +#: templates/consumption/dcf_check.html:67 msgid "Flowmeter" msgstr "Flowmeter" -#: templates/consumption/consumptionform_detail.html:87 templates/consumption/pdf/page.html:47 +#: templates/consumption/consumptionform_detail.html:91 +#: templates/consumption/pdf/page.html:47 msgid "Weight" msgstr "Gewicht" @@ -2493,11 +2910,13 @@ msgstr "Geen missende formulieren. Hulde!" msgid "Has comments:" msgstr "Heeft commentaar:" -#: templates/consumption/consumptionproduct_form.html:5 templates/consumption/consumptionproduct_form.html:15 +#: templates/consumption/consumptionproduct_form.html:5 +#: templates/consumption/consumptionproduct_form.html:15 msgid "Edit consumption product" msgstr "Wijzig voorraadproduct" -#: templates/consumption/consumptionproduct_form.html:7 templates/consumption/consumptionproduct_form.html:17 +#: templates/consumption/consumptionproduct_form.html:7 +#: templates/consumption/consumptionproduct_form.html:17 msgid "New consumption product" msgstr "Nieuw voorraadproduct" @@ -2509,7 +2928,8 @@ msgstr "Nieuw (KG)" msgid "Add (CE)" msgstr "Nieuw (CE)" -#: templates/consumption/consumptionproduct_list.html:26 templates/consumption/consumptionproduct_list.html:66 +#: templates/consumption/consumptionproduct_list.html:26 +#: templates/consumption/consumptionproduct_list.html:66 msgid "Type" msgstr "Type" @@ -2517,7 +2937,8 @@ msgstr "Type" msgid "Archived products" msgstr "Gearchiveerde producten" -#: templates/consumption/dcf.html:21 templates/consumption/dcf_check.html:10 templates/consumption/dcf_finished.html:9 +#: templates/consumption/dcf.html:21 templates/consumption/dcf_check.html:10 +#: templates/consumption/dcf_finished.html:9 msgid "Digital consumption form" msgstr "Digitaal verbruiksformulier" @@ -2549,7 +2970,8 @@ msgstr "Wijzigen" msgid "Correct the errors listed above before completing the form." msgstr "Verbeter bovenstaande fouten voordat je het formulier afrond." -#: templates/consumption/dcf_export.html:3 templates/consumption/dcf_export.html:7 +#: templates/consumption/dcf_export.html:3 +#: templates/consumption/dcf_export.html:7 msgid "Export consumption forms" msgstr "Verbruiksformulieren exporteren" @@ -2609,7 +3031,8 @@ msgstr "Fustbier" msgid "Begin" msgstr "Begin" -#: templates/consumption/pdf/page.html:40 templates/scheduling/event_detail.html:60 +#: templates/consumption/pdf/page.html:40 +#: templates/scheduling/event_detail.html:64 msgid "End" msgstr "Einde" @@ -2642,8 +3065,16 @@ msgid "Developers" msgstr "Ontwikkelaars" #: templates/general/about.html:13 -msgid "Alexia was developed for the drink basements under management of SBZ (Zilverling Drink Management Foundation). The base of this application was developed during the design project course, part of the Computer Science Bachelor. The following people contributed to this project:" -msgstr "Alexia is ontwikkeld voor het beheer van de borrelruimtes van SBZ (Stichting Borrelbeheer Zilverling). De basis van deze applicatie is gelegd tijdens het Ontwerpproject van de bachelor Technische Informatica. De volgende mensen hebben daaraan bijgedragen:" +msgid "" +"Alexia was developed for the drink basements under management of SBZ " +"(Zilverling Drink Management Foundation). The base of this application was " +"developed during the design project course, part of the Computer Science " +"Bachelor. The following people contributed to this project:" +msgstr "" +"Alexia is ontwikkeld voor het beheer van de borrelruimtes van SBZ (Stichting " +"Borrelbeheer Zilverling). De basis van deze applicatie is gelegd tijdens het " +"Ontwerpproject van de bachelor Technische Informatica. De volgende mensen " +"hebben daaraan bijgedragen:" #: templates/general/about.html:27 msgid "After the design project development of Alexia was continued by" @@ -2653,7 +3084,8 @@ msgstr "Na het Ontwerpproject is Alexia doorontwikkeld door" msgid "Drinks" msgstr "Borrels" -#: templates/organization/certificate_form.html:3 templates/organization/certificate_form.html:8 +#: templates/organization/certificate_form.html:3 +#: templates/organization/certificate_form.html:8 msgid "Upload IVA certificate" msgstr "IVA certificaat uploaden" @@ -2662,14 +3094,19 @@ msgid "Caution!" msgstr "Let op!" #: templates/organization/certificate_form.html:14 -msgid "This is already an approved IVA certificate. Uploading a new one will make the current one invalid!" -msgstr "Dit is al een IVA-ceritficaat dat goedgekeurd is. Als je een nieuwe upload wordt de oude automatisch verwijderd!" +msgid "" +"This is already an approved IVA certificate. Uploading a new one will make " +"the current one invalid!" +msgstr "" +"Dit is al een IVA-ceritficaat dat goedgekeurd is. Als je een nieuwe upload " +"wordt de oude automatisch verwijderd!" #: templates/organization/certificate_form.html:21 msgid "User" msgstr "Gebruiker" -#: templates/organization/membership_confirm_delete.html:3 templates/organization/membership_confirm_delete.html:7 +#: templates/organization/membership_confirm_delete.html:3 +#: templates/organization/membership_confirm_delete.html:7 msgid "Delete user" msgstr "Gebruiker verwijderen" @@ -2698,40 +3135,58 @@ msgstr "Getapt afgelopen jaar" msgid "Last tended events" msgstr "Laatst getapte activiteiten" -#: templates/organization/membership_form.html:5 templates/organization/membership_form.html:15 +#: templates/organization/membership_form.html:5 +#: templates/organization/membership_form.html:15 msgid "Modify user" msgstr "Gebruiker wijzigen" -#: templates/organization/membership_form.html:7 templates/organization/membership_form.html:17 templates/organization/membership_list.html:12 +#: templates/organization/membership_form.html:7 +#: templates/organization/membership_form.html:17 +#: templates/organization/membership_list.html:12 msgid "Add user" msgstr "Gebruiker toevoegen" -#: templates/organization/membership_iva.html:3 templates/organization/membership_iva.html:8 +#: templates/organization/membership_iva.html:3 +#: templates/organization/membership_iva.html:8 #, python-format msgid "Tenders of %(organization)s" msgstr "Tappers van %(organization)s" -#: templates/organization/membership_iva.html:16 templates/organization/membership_list.html:27 +#: templates/organization/membership_iva.html:16 +#: templates/organization/membership_list.html:27 msgid "Authorization" msgstr "Autorisatie" -#: templates/organization/membership_iva.html:17 templates/organization/membership_list.html:29 templates/scheduling/event_list.html:41 +#: templates/organization/membership_iva.html:17 +#: templates/organization/membership_list.html:29 +#: templates/scheduling/event_list.html:41 msgid "IVA" msgstr "IVA" -#: templates/organization/membership_iva.html:26 templates/organization/membership_list.html:47 templates/profile/profile.html:53 templates/profile/profile.html:155 templates/scheduling/event_bartender.html:3 templates/scheduling/event_bartender.html:7 templates/scheduling/event_bartender_availability_form.html:19 templates/scheduling/event_matrix.html:17 +#: templates/organization/membership_iva.html:26 +#: templates/organization/membership_list.html:47 +#: templates/profile/profile.html:53 templates/profile/profile.html:155 +#: templates/scheduling/event_bartender.html:3 +#: templates/scheduling/event_bartender.html:7 +#: templates/scheduling/event_bartender_availability_form.html:19 +#: templates/scheduling/event_matrix.html:17 msgid "Bartender" msgstr "Tapper" -#: templates/organization/membership_iva.html:27 templates/organization/membership_list.html:48 templates/profile/profile.html:156 +#: templates/organization/membership_iva.html:27 +#: templates/organization/membership_list.html:48 +#: templates/profile/profile.html:156 msgid "Planner" msgstr "Planner" -#: templates/organization/membership_iva.html:28 templates/organization/membership_list.html:49 templates/profile/profile.html:157 +#: templates/organization/membership_iva.html:28 +#: templates/organization/membership_list.html:49 +#: templates/profile/profile.html:157 msgid "Manager" msgstr "Manager" -#: templates/organization/membership_list.html:3 templates/organization/membership_list.html:8 +#: templates/organization/membership_list.html:3 +#: templates/organization/membership_list.html:8 #, python-format msgid "Users of %(organization)s" msgstr "Gebruikers van %(organization)s" @@ -2740,15 +3195,20 @@ msgstr "Gebruikers van %(organization)s" msgid "Print IVA list" msgstr "IVA-lijst uitdraaien" -#: templates/organization/membership_list.html:28 templates/profile/profile.html:93 +#: templates/organization/membership_list.html:28 +#: templates/profile/profile.html:93 msgid "Active" msgstr "Actief" -#: templates/organization/membership_list.html:30 templates/profile/profile.html:40 templates/scheduling/event_matrix.html:18 +#: templates/organization/membership_list.html:30 +#: templates/profile/profile.html:40 templates/scheduling/event_matrix.html:18 msgid "Tended" msgstr "Getapt" -#: templates/organization/membership_list.html:31 templates/scheduling/event_detail.html:131 templates/scheduling/event_detail.html:137 templates/scheduling/event_matrix.html:19 +#: templates/organization/membership_list.html:31 +#: templates/scheduling/event_detail.html:135 +#: templates/scheduling/event_detail.html:141 +#: templates/scheduling/event_matrix.html:19 msgid "Last tended" msgstr "Laatst getapt" @@ -2789,7 +3249,8 @@ msgstr "Mijn uitgaven op %(event)s" msgid "There are no payments!" msgstr "Er zijn geen betalingen!" -#: templates/profile/expenditure_list.html:3 templates/profile/expenditure_list.html:8 +#: templates/profile/expenditure_list.html:3 +#: templates/profile/expenditure_list.html:8 msgid "My expenditures" msgstr "Mijn uitgaven" @@ -2835,7 +3296,8 @@ msgstr "Uitgegeven" #: templates/profile/profile.html:87 msgid "This is an overview of RFID cards linked to your account." -msgstr "Dit is een overzicht van RFID-kaarten die aan jouw account gekoppeld zijn." +msgstr "" +"Dit is een overzicht van RFID-kaarten die aan jouw account gekoppeld zijn." #: templates/profile/profile.html:92 msgid "ID number" @@ -2862,8 +3324,12 @@ msgid "Autorization" msgstr "Autorisatie" #: templates/profile/profile.html:142 -msgid "The following roles are assigned to you. Contact the organization in question for more details." -msgstr "De volgende rollen zijn aan jou toegekend. Neem contact op met de betreffende vereniging voor meer details." +msgid "" +"The following roles are assigned to you. Contact the organization in " +"question for more details." +msgstr "" +"De volgende rollen zijn aan jou toegekend. Neem contact op met de " +"betreffende vereniging voor meer details." #: templates/profile/profile.html:147 msgid "Roles" @@ -2929,30 +3395,39 @@ msgstr "Log in met je lokale Alexia-account en wachtwoord." #, python-format msgid "" "\n" -" If you have no local Alexia account, please log in with your University account.\n" +" If you have no local Alexia account, please log in with your University account.\n" " " msgstr "" "\n" -" Als je geen lokaal Alexia-account hebt, log dan in met je Universiteitsaccount.\n" +" Als je geen lokaal Alexia-account hebt, log dan in met je Universiteitsaccount.\n" " " -#: templates/registration/register.html:3 templates/registration/register.html:11 +#: templates/registration/register.html:3 +#: templates/registration/register.html:11 msgid "Registration" msgstr "Registratie" #: templates/registration/register.html:12 -msgid "Your account details are not complete. Please fill in this form to continue." -msgstr "Nog niet al jouw gegevens zijn bekend bij Alexia, voer deze in om verder te mogen." +msgid "" +"Your account details are not complete. Please fill in this form to continue." +msgstr "" +"Nog niet al jouw gegevens zijn bekend bij Alexia, voer deze in om verder te " +"mogen." -#: templates/scheduling/availability_form.html:5 templates/scheduling/availability_form.html:15 +#: templates/scheduling/availability_form.html:5 +#: templates/scheduling/availability_form.html:15 msgid "Edit availability" msgstr "Wijzig beschikbaarheid" -#: templates/scheduling/availability_form.html:7 templates/scheduling/availability_form.html:17 +#: templates/scheduling/availability_form.html:7 +#: templates/scheduling/availability_form.html:17 msgid "New availability" msgstr "Nieuwe beschikbaarheid" -#: templates/scheduling/availability_list.html:3 templates/scheduling/availability_list.html:8 +#: templates/scheduling/availability_list.html:3 +#: templates/scheduling/availability_list.html:8 #, python-format msgid "Availabilities of %(organization)s" msgstr "Beschikbaarheden van %(organization)s" @@ -2965,7 +3440,10 @@ msgstr "Soort" msgid "No availabilities defined." msgstr "Geen beschikbaarheden gedefinieerd." -#: templates/scheduling/event_bartender.html:17 templates/scheduling/event_calendar.html:27 templates/scheduling/event_detail.html:126 templates/scheduling/event_list.html:42 +#: templates/scheduling/event_bartender.html:17 +#: templates/scheduling/event_calendar.html:27 +#: templates/scheduling/event_detail.html:130 +#: templates/scheduling/event_list.html:42 msgid "Bartenders" msgstr "Tappers" @@ -2977,7 +3455,8 @@ msgstr "Tappersinstructie" msgid "You don't have any events to tend." msgstr "Je hoeft nergens te tappen." -#: templates/scheduling/event_bartender_availability_form.html:3 templates/scheduling/event_bartender_availability_form.html:7 +#: templates/scheduling/event_bartender_availability_form.html:3 +#: templates/scheduling/event_bartender_availability_form.html:7 msgid "Edit bartender availability" msgstr "Bewerk tapperbeschikbaarheid" @@ -3057,11 +3536,15 @@ msgstr "Week" msgid "Loading..." msgstr "Laden..." -#: templates/scheduling/event_calendar.html:101 templates/scheduling/event_form.html:7 templates/scheduling/event_form.html:17 templates/scheduling/event_list.html:13 +#: templates/scheduling/event_calendar.html:101 +#: templates/scheduling/event_form.html:7 +#: templates/scheduling/event_form.html:17 +#: templates/scheduling/event_list.html:13 msgid "Add event" msgstr "Activiteit toevoegen" -#: templates/scheduling/event_confirm_delete.html:3 templates/scheduling/event_confirm_delete.html:7 +#: templates/scheduling/event_confirm_delete.html:3 +#: templates/scheduling/event_confirm_delete.html:7 msgid "Delete event" msgstr "Activiteit verwijderen" @@ -3074,39 +3557,44 @@ msgstr "Weet je zeker dat je activiteit \"%(event)s\" wil verwijderen?" msgid "Yes, I am sure" msgstr "Ik weet het heel, heel zeker" -#: templates/scheduling/event_detail.html:39 +#: templates/scheduling/event_detail.html:43 msgid "Description" msgstr "Omschrijving" -#: templates/scheduling/event_detail.html:48 +#: templates/scheduling/event_detail.html:52 msgid "Participants" msgstr "Deelnemers" -#: templates/scheduling/event_detail.html:56 +#: templates/scheduling/event_detail.html:60 msgid "Start" msgstr "Begin" -#: templates/scheduling/event_detail.html:67 +#: templates/scheduling/event_detail.html:71 msgid "Tender comments" msgstr "Tappersinstructie" -#: templates/scheduling/event_detail.html:70 +#: templates/scheduling/event_detail.html:74 msgid "Temporary products" msgstr "Tijdelijke producten" -#: templates/scheduling/event_detail.html:71 +#: templates/scheduling/event_detail.html:75 msgid "Temporary products can only be created or modified by managers." -msgstr "Tijdelijke producten kunnen alleen aangemaakt of gewijzigd worden door managers." +msgstr "" +"Tijdelijke producten kunnen alleen aangemaakt of gewijzigd worden door " +"managers." -#: templates/scheduling/event_detail.html:106 +#: templates/scheduling/event_detail.html:110 msgid "No temporary products defined." msgstr "Geen tijdelijke producten gedefinieerd." -#: templates/scheduling/event_detail.html:131 templates/scheduling/event_detail.html:137 templates/scheduling/event_matrix.html:30 +#: templates/scheduling/event_detail.html:135 +#: templates/scheduling/event_detail.html:141 +#: templates/scheduling/event_matrix.html:30 msgid "Never" msgstr "Nooit" -#: templates/scheduling/event_form.html:5 templates/scheduling/event_form.html:15 +#: templates/scheduling/event_form.html:5 +#: templates/scheduling/event_form.html:15 msgid "Edit event" msgstr "Activiteit bewerken" @@ -3118,7 +3606,8 @@ msgstr "Filters" msgid "Kegs" msgstr "Fusten" -#: templates/scheduling/event_list.html:78 templates/scheduling/event_list.html:79 +#: templates/scheduling/event_list.html:78 +#: templates/scheduling/event_list.html:79 msgid "Has tender comment:" msgstr "Heeft tappersinstructie:" @@ -3152,15 +3641,18 @@ msgstr "Er is niks ingepland na %(datetime)s." msgid "No events have been planned." msgstr "Er zijn geen evenementen gepland." -#: templates/scheduling/mailtemplate_detail.html:3 templates/scheduling/mailtemplate_detail.html:8 +#: templates/scheduling/mailtemplate_detail.html:3 +#: templates/scheduling/mailtemplate_detail.html:8 msgid "Mail template" msgstr "Mailsjabloon" -#: templates/scheduling/mailtemplate_detail.html:28 templates/scheduling/mailtemplate_list.html:16 +#: templates/scheduling/mailtemplate_detail.html:28 +#: templates/scheduling/mailtemplate_list.html:16 msgid "Subject" msgstr "Onderwerp" -#: templates/scheduling/mailtemplate_detail.html:32 templates/scheduling/mailtemplate_list.html:17 +#: templates/scheduling/mailtemplate_detail.html:32 +#: templates/scheduling/mailtemplate_list.html:17 msgid "Is active" msgstr "Is actief" @@ -3168,11 +3660,13 @@ msgstr "Is actief" msgid "Template" msgstr "Sjabloon" -#: templates/scheduling/mailtemplate_form.html:3 templates/scheduling/mailtemplate_form.html:7 +#: templates/scheduling/mailtemplate_form.html:3 +#: templates/scheduling/mailtemplate_form.html:7 msgid "Edit mail template" msgstr "Wijzig mailsjabloon" -#: templates/scheduling/mailtemplate_list.html:3 templates/scheduling/mailtemplate_list.html:8 +#: templates/scheduling/mailtemplate_list.html:3 +#: templates/scheduling/mailtemplate_list.html:8 #, python-format msgid "Mail templates of %(organization)s" msgstr "Mailsjablonen van %(organization)s" diff --git a/templates/billing/order_detail.html b/templates/billing/order_detail.html index 0e91afa..2f475cf 100644 --- a/templates/billing/order_detail.html +++ b/templates/billing/order_detail.html @@ -55,24 +55,73 @@

{% trans 'Billing' %}

{% trans 'Sales' %}

- - - - - - - - - - {% for product in products %} - - - - - - {% endfor %} - -
{% trans 'Product' %}{% trans 'Revenue' %}
{{ product.amount }} ×{{ product.product }}€ {{ product.price }}
+ +
+
+ + + + + + + + + + {% for product in products %} + + + + + + {% endfor %} + +
{% trans 'Product' %}{% trans 'Revenue' %}
{{ product.amount }} ×{{ product.product }}€ {{ product.price }}
+
+
+ + + + + + + + + + {% for category, data in grouped_writeoff_data.items %} + + + + + + + {% for product in data.products %} + + + + + + {% endfor %} + + + + + + + {% endfor %} + +
{% trans 'Product' %}{% trans 'Written off' %}
{{ category }}
{{ product.total_amount }} ×{{ product.product }}€ {{ product.total_price }}
Total:{{ data.total_amount }}€{{data.total_price}}
+ {% trans 'Export' %} +
+

From 63b5df0bd70bd37312cad1f61d2601bc2abead16 Mon Sep 17 00:00:00 2001 From: Kevin Alberts Date: Fri, 11 Oct 2024 12:27:31 +0200 Subject: [PATCH 4/5] Some small improvements to the writeoff feature. See details below. - Django admin: Add inline display of purchases in a writeoff order - Add toString for writeoff categories, to improve display in Django admin - Add a writeoff order detail page to view individual writeoff order details. - Add a list of writeoff orders to the drink orders page. - Increase max description length of a writeoff category - Actually display the writeoff category description on the writeoff button, in the order overview, and on the writeoff detail page - Move util to a model class method, as it makes more sense there. - Add a cancel button to the writeoff screen, to go back to the regular sales view. - Add a timer to write-off orders, just like regular orders, so they can be cancelled if a mistake is made - CSS tweaks to improve layout of the writeoff juliana frontend --- alexia/apps/billing/admin.py | 21 +++++- ...category_writeofforder_writeoffpurchase.py | 12 ++-- alexia/apps/billing/models.py | 32 ++++++++- alexia/apps/billing/urls.py | 1 + alexia/apps/billing/views.py | 28 ++++++-- alexia/utils/writeoff.py | 21 ------ assets/css/juliana.css | 39 +++++++++-- assets/js/juliana.js | 66 +++++++++++++++++-- templates/billing/juliana.html | 53 +++++++++++++-- templates/billing/order_detail.html | 35 +++++++++- templates/billing/writeoff_order_detail.html | 58 ++++++++++++++++ 11 files changed, 310 insertions(+), 56 deletions(-) delete mode 100644 alexia/utils/writeoff.py create mode 100644 templates/billing/writeoff_order_detail.html diff --git a/alexia/apps/billing/admin.py b/alexia/apps/billing/admin.py index da2990c..6a53f80 100644 --- a/alexia/apps/billing/admin.py +++ b/alexia/apps/billing/admin.py @@ -2,7 +2,7 @@ from .models import ( Authorization, Order, PermanentProduct, PriceGroup, ProductGroup, Purchase, - RfidCard, SellingPrice, WriteOffOrder, + RfidCard, SellingPrice, WriteOffOrder, WriteOffPurchase ) @@ -18,6 +18,7 @@ class AuthorizationAdmin(admin.ModelAdmin): class PurchaseInline(admin.TabularInline): model = Purchase can_delete = False + extra = 0 def get_readonly_fields(self, request, obj=None): if obj and obj.synchronized: @@ -48,11 +49,25 @@ def has_delete_permission(self, request, obj=None): def save_formset(self, request, form, formset, change): formset.save() form.instance.save() # Updates Order.amount - + + +class WriteOffPurchaseInline(admin.TabularInline): + model = WriteOffPurchase + can_delete = False + extra = 0 + + def get_readonly_fields(self, request, obj=None): + if obj: + return self.readonly_fields + ('product', 'amount', 'price') + return self.readonly_fields + + @admin.register(WriteOffOrder) -class WriteoffOrderAdmin(admin.ModelAdmin): +class WriteOffOrderAdmin(admin.ModelAdmin): date_hierarchy = 'placed_at' + inlines = [WriteOffPurchaseInline] list_display = ['event', 'placed_at', 'amount'] + list_filter = ['placed_at'] raw_id_fields = ['added_by', 'event'] readonly_fields = ['placed_at'] diff --git a/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py b/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py index 212b848..00e6833 100644 --- a/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py +++ b/alexia/apps/billing/migrations/0019_writeoffcategory_writeofforder_writeoffpurchase.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.28 on 2024-09-26 14:28 +# Generated by Django 2.2.28 on 2024-10-11 10:06 import alexia.core.validators from django.conf import settings @@ -10,9 +10,9 @@ class Migration(migrations.Migration): dependencies = [ - ('scheduling', '0021_auto_20240926_1621'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('organization', '0025_organization_writeoff_enabled'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('scheduling', '0021_auto_20240926_1621'), ('billing', '0018_product_shortcut'), ] @@ -22,7 +22,7 @@ class Migration(migrations.Migration): fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=20, verbose_name='name')), - ('description', models.CharField(max_length=50, verbose_name='short description')), + ('description', models.CharField(max_length=80, verbose_name='short description')), ('color', models.CharField(blank=True, max_length=6, validators=[alexia.core.validators.validate_color], verbose_name='color')), ('is_active', models.BooleanField(default=False, verbose_name='active')), ('organization', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organization.Organization', verbose_name='organization')), @@ -39,8 +39,8 @@ class Migration(migrations.Migration): ('writeoff_category', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='billing.WriteoffCategory', verbose_name='writeoff category')), ], options={ - 'verbose_name': 'order', - 'verbose_name_plural': 'orders', + 'verbose_name': 'writeoff order', + 'verbose_name_plural': 'writeoff orders', 'ordering': ['-placed_at'], }, ), diff --git a/alexia/apps/billing/models.py b/alexia/apps/billing/models.py index 02c317d..b50d767 100644 --- a/alexia/apps/billing/models.py +++ b/alexia/apps/billing/models.py @@ -1,5 +1,6 @@ from __future__ import unicode_literals +from collections import defaultdict from decimal import Decimal from django.conf import settings @@ -335,7 +336,7 @@ def __str__(self): @python_2_unicode_compatible class WriteoffCategory(models.Model): name = models.CharField(_('name'), max_length=20) - description = models.CharField(_('short description'), max_length=50) + description = models.CharField(_('short description'), max_length=80) color = models.CharField(verbose_name=_('color'), blank=True, max_length=6, validators=[validate_color]) organization = models.ForeignKey( Organization, @@ -344,6 +345,12 @@ class WriteoffCategory(models.Model): ) is_active = models.BooleanField(_('active'), default=False) + def __str__(self): + return _('{name} for {organization}').format( + name=self.name, + organization=self.organization + ) + @python_2_unicode_compatible class WriteOffOrder(models.Model): event = models.ForeignKey(Event, on_delete=models.PROTECT, related_name='writeoff_orders', verbose_name=_('event')) @@ -396,4 +403,25 @@ class Meta: verbose_name_plural = _('purchases') def __str__(self): - return '%s x %s' % (self.amount, self.product) \ No newline at end of file + return '%s x %s' % (self.amount, self.product) + + @classmethod + def get_writeoff_products(cls, event): + writeoff_products = WriteOffPurchase.objects.filter(order__event=event) \ + .values('order__writeoff_category__name', 'order__writeoff_category__description', 'product') \ + .annotate(total_amount=models.Sum('amount'), total_price=models.Sum('price')) \ + .order_by('order__writeoff_category__name', 'product') + + # Group writeoffs by category + grouped_writeoff_products = defaultdict(lambda: {'products': [], 'total_amount': 0, 'total_price': 0, 'description': ''}) + + # calculate total product amount and total price per category + for product in writeoff_products: + category_name = product['order__writeoff_category__name'] + grouped_writeoff_products[category_name]['description'] = product['order__writeoff_category__description'] + grouped_writeoff_products[category_name]['products'].append(product) + grouped_writeoff_products[category_name]['total_amount'] += product['total_amount'] + grouped_writeoff_products[category_name]['total_price'] += product['total_price'] + + # Convert defaultdict to a regular dict for easier template use + return dict(grouped_writeoff_products) diff --git a/alexia/apps/billing/urls.py b/alexia/apps/billing/urls.py index c2df32b..7f2937b 100644 --- a/alexia/apps/billing/urls.py +++ b/alexia/apps/billing/urls.py @@ -6,6 +6,7 @@ url(r'^order/$', views.OrderListView.as_view(), name='orders'), url(r'^order/(?P[0-9]+)/$', views.OrderDetailView.as_view(), name='event-orders'), url(r'^order/writeoff/(?P[0-9]+)/$', views.WriteOffExportView.as_view(), name='writeoff_export'), + url(r'^writeoff/(?P[0-9]+)/$', views.WriteOffDetailView.as_view(), name='writeoff-order'), url(r'^order/export/$', views.OrderExportView.as_view(), name='export-orders'), url(r'^stats/(?P[0-9]{4})/$', views.OrderYearView.as_view(), name='year-orders'), url(r'^stats/(?P[0-9]{4})/(?P[0-9]{1,2})/$', views.OrderMonthView.as_view(), name='month-orders'), diff --git a/alexia/apps/billing/views.py b/alexia/apps/billing/views.py index e368621..70e02cd 100644 --- a/alexia/apps/billing/views.py +++ b/alexia/apps/billing/views.py @@ -35,8 +35,7 @@ OrganizationFilterMixin, OrganizationFormMixin, ) -from .models import Order, Purchase, WriteOffPurchase, WriteoffCategory -from alexia.utils.writeoff import get_writeoff_products +from .models import Order, Purchase, WriteOffOrder, WriteOffPurchase, WriteoffCategory import json class JulianaView(TenderRequiredMixin, DetailView): @@ -133,12 +132,16 @@ def get_context_data(self, **kwargs): writeoff_exists = self.object.writeoff_orders.exists + grouped_writeoff_products = None + writeoff_orders = None if writeoff_exists: - grouped_writeoff_products = get_writeoff_products(self.object, WriteOffPurchase.objects) + grouped_writeoff_products = WriteOffPurchase.get_writeoff_products(event=self.object) + writeoff_orders = WriteOffOrder.objects.filter(event=self.object).order_by('-placed_at') context = super(OrderDetailView, self).get_context_data(**kwargs) context.update({ 'orders': self.object.orders.select_related('authorization__user').order_by('-placed_at'), + 'writeoff_orders': writeoff_orders, 'products': products, 'revenue': products.aggregate(Sum('price'))['price__sum'], 'writeoff_exists': writeoff_exists, @@ -147,6 +150,22 @@ def get_context_data(self, **kwargs): return context + +class WriteOffDetailView(LoginRequiredMixin, DetailView): + model = WriteOffOrder + template_name = 'billing/writeoff_order_detail.html' + + def get_object(self, queryset=None): + obj = super(WriteOffDetailView, self).get_object(queryset) + + if not self.request.user.is_superuser \ + and not self.request.user.profile.is_manager(obj.authorization.organization) \ + and not obj.authorization.user == self.request.user: + raise PermissionDenied + + return obj + + class WriteOffExportView(ManagerRequiredMixin, DenyWrongOrganizationMixin, View): organization_field = 'organizer' @@ -160,10 +179,11 @@ def get(self, request, *args, **kwargs): if not writeoff_exists: raise Http404 - grouped_writeoff_products = get_writeoff_products(event, WriteOffPurchase.objects) + grouped_writeoff_products = WriteOffPurchase.get_writeoff_products(event=event) return JsonResponse(grouped_writeoff_products) + class OrderExportView(ManagerRequiredMixin, FormView): template_name = 'billing/order_export_form.html' form_class = FilterEventForm diff --git a/alexia/utils/writeoff.py b/alexia/utils/writeoff.py deleted file mode 100644 index ee4f82a..0000000 --- a/alexia/utils/writeoff.py +++ /dev/null @@ -1,21 +0,0 @@ -from collections import defaultdict -from django.db.models import Sum - -def get_writeoff_products(event, writeoff_purchases): - writeoff_products = writeoff_purchases.filter(order__event=event) \ - .values('order__writeoff_category__name', 'product') \ - .annotate(total_amount=Sum('amount'), total_price=Sum('price')) \ - .order_by('order__writeoff_category__name', 'product') - - # Group writeoffs by category - grouped_writeoff_products = defaultdict(lambda: {'products': [], 'total_amount': 0, 'total_price': 0}) - - # calculate total product amount and total price per category - for product in writeoff_products: - category_name = product['order__writeoff_category__name'] - grouped_writeoff_products[category_name]['products'].append(product) - grouped_writeoff_products[category_name]['total_amount'] += product['total_amount'] - grouped_writeoff_products[category_name]['total_price'] += product['total_price'] - - # Convert defaultdict to a regular dict for easier template use - return dict(grouped_writeoff_products) \ No newline at end of file diff --git a/assets/css/juliana.css b/assets/css/juliana.css index f5cfeae..f17869e 100644 --- a/assets/css/juliana.css +++ b/assets/css/juliana.css @@ -13,6 +13,12 @@ body { padding:10px; } +.tab-sale.tab-writeoff > div.well { + height:750px !important; + margin-bottom:0; + padding:10px; +} + .tab-sale .row { padding-left:10px; padding-right:10px; @@ -46,6 +52,20 @@ body { bottom: 0.2em; } +.tab-sale .btn-writeoff { + line-height: inherit !important; + padding-top: 10px; + height: 120px !important; +} + +.tab-sale .btn-writeoff > span { + display: block !important; +} + +.tab-sale .btn-writeoff > small { + display: block !important; +} + #keypad .row { padding-left:10px; padding-right:10px; @@ -158,17 +178,17 @@ body { /*Payment/RFID screen*/ -#rfid-screen { +#rfid-screen, #writeoff-timer-screen { height:860px; padding-top:130px; padding-bottom:130px; } -#payment-in { +#payment-in, #writeoff-in { font-size:28px; } -#payment-countdown { +#payment-countdown, #writeoff-countdown { font-size:28px; padding:10px 18px; background:#888; @@ -177,19 +197,26 @@ body { font-weight:bold; } -#payment-receipt { +#payment-receipt, #writeoff-receipt { font-size:20px; } -#payment-receipt tr td:last-child, #payment-receipt tr td:nth-child(2) { +#payment-receipt tr td:last-child, #payment-receipt tr td:nth-child(2), +#writeoff-receipt tr td:last-child, #writeoff-receipt tr td:nth-child(2) { text-align:right; } -#payment-buttons .btn { +#payment-buttons .btn, #writeoff-buttons .btn { font-size:28px; padding:20px 32px; } +#cancel-writeoff-buttons .btn { + font-size:28px; + padding: 8px 32px; + margin-top: 10px; +} + /*Error screen*/ #error-screen { } diff --git a/assets/js/juliana.js b/assets/js/juliana.js index 23b28d7..ccdcddf 100644 --- a/assets/js/juliana.js +++ b/assets/js/juliana.js @@ -31,6 +31,7 @@ State = { CHECK: 3, MESSAGE: 4, WRITEOFF: 5, + WRITEOFF_TIMER: 6, current: this.SALES, toggleTo: function (newState, argument) { @@ -42,6 +43,7 @@ State = { clearInterval(Receipt.counterInterval); Receipt.clear(); $('#payment-receipt').html(''); + $('#writeoff-receipt').html(''); $('#countdownbox').show(); this._hideAllScreens(); @@ -72,6 +74,27 @@ State = { $('#rfid-screen').show(); break; + case this.WRITEOFF_TIMER: + console.log('Changing to WRITEOFF_TIMER...'); + this.current = this.WRITEOFF_TIMER; + this._hideAllScreens(); + + var receipt = Receipt.receipt; + var receiptHTML = ''; + var total = 0; + for (var i = 0; i < receipt.length; i++) { + receiptHTML += ''; + receiptHTML += '' + Settings.products[receipt[i].product].name + ''; + receiptHTML += '' + receipt[i].amount + ''; + receiptHTML += '€' + (receipt[i].price / 100).toFixed(2) + ''; + receiptHTML += ''; + total += receipt[i].price; + } + receiptHTML += 'Total:€' + (total / 100).toFixed(2) + ''; + $('#writeoff-receipt').html(receiptHTML); + + $('#writeoff-timer-screen').show(); + break; case this.ERROR: this.current = this.ERROR; this._hideAllScreens(); @@ -115,6 +138,7 @@ State = { $('#error-screen').hide(); $('#message-screen').hide(); $('#writeoff-screen').hide(); + $('#writeoff-timer-screen').hide(); // Show possible hidden screens in case of writeoff $("#keypad").show(); @@ -320,15 +344,37 @@ Receipt = { var amount = Math.ceil(sum / 10) * 10; State.toggleTo(State.MESSAGE, 'Dat wordt dan € ' + (amount/100).toFixed(2)); }, - writeoffNow: function (categoryId) { + writeoff: function(categoryId) { + if (Receipt.receipt.length > 0) { + console.log('Proceeding to countdown.'); + State.toggleTo(State.WRITEOFF_TIMER); + + Receipt.payData = { + event_id: Settings.event_id, + writeoff_id: categoryId, + purchases: Receipt.receipt + }; + + var countdown = Settings.countdown - 1; + $('#writeoff-countdown').text(countdown + 1); + Receipt.counterInterval = setInterval(function () { + $('#writeoff-countdown').text(countdown); + if (countdown === 0) { + Receipt.writeoffNow(); + } + countdown--; + }, 1000); + } else { + console.log('Info: receipt empty'); + Display.set('Please select products!'); + State.toggleTo(State.ERROR, 'Error: Geen producten geselecteerd!'); + } + }, + writeoffNow: function () { let rpcRequest = { jsonrpc: '2.0', method: 'juliana.writeoff.save', - params: { - event_id: Settings.event_id, - writeoff_id: categoryId, - purchases: Receipt.receipt, - }, + params: Receipt.payData, id: 2 // id used for? } @@ -503,6 +549,9 @@ $(function () { case 'payNow': Receipt.payNow(); break; + case 'writeoffNow': + Receipt.writeoffNow(); + break; case 'ok': State.toggleTo(State.SALES); break; @@ -511,7 +560,10 @@ $(function () { break; case 'writeoffCategory': // writeoff category with id: - Receipt.writeoffNow($(this).data('category')) + Receipt.writeoff($(this).data('category')) + break; + case 'cancelWriteoff': + State.toggleTo(State.SALES); break; default: Display.set('ongeimplementeerde functie'); diff --git a/templates/billing/juliana.html b/templates/billing/juliana.html index 31c8c71..62320ab 100644 --- a/templates/billing/juliana.html +++ b/templates/billing/juliana.html @@ -113,25 +113,33 @@ {% if writeoff %}
-
+
{% for category in writeoff_categories %} {% endfor %}
+
+
+
+ Annuleer +
+
+
-
- {% comment %} Insert to be withdrawn {% endcomment %} -
{% endif %}
@@ -186,6 +194,39 @@

Rekening

+
+
+
+ +
+
+
+
+
+ Write off in: + {{ countdown }} +
+
+
+
+
+ +
+
+
+
+
+
+ Cancel + Ok +
+
+
+
+
+
+
diff --git a/templates/billing/order_detail.html b/templates/billing/order_detail.html index 2f475cf..9fb3e1a 100644 --- a/templates/billing/order_detail.html +++ b/templates/billing/order_detail.html @@ -99,7 +99,10 @@

{% trans 'Sales' %}

{% for category, data in grouped_writeoff_data.items %} - {{ category }} + + {% if data.description %}{{ category }} + {% else %}{{ category }}{% endif %} + @@ -154,4 +157,34 @@

{% trans 'Orders' %}

+{% if writeoff_exists %} +
+
+
+

{% trans 'Written off orders' %}

+
+ + + + + + + + + + + {% for order in writeoff_orders %} + + + + + + + {% endfor %} + +
{% trans 'ID' %}{% trans 'Amount' %}{% trans 'Category' %}{% trans 'Timestamp' %}
{{ order.pk }}€ {{ order.amount|floatformat:2 }}{{ order.writeoff_category.name }}{{ order.placed_at }}
+
+
+
+{% endif %} {% endblock content %} diff --git a/templates/billing/writeoff_order_detail.html b/templates/billing/writeoff_order_detail.html new file mode 100644 index 0000000..1ea0e6b --- /dev/null +++ b/templates/billing/writeoff_order_detail.html @@ -0,0 +1,58 @@ +{% extends 'base_app.html' %} + +{% block title %}{% trans 'Write off' %} #{{ object.pk }}{% endblock title %} + +{% block content %} + +
+
+

{% trans 'Details' %}

+ + + + + + + + + + + + + + + + + + + + + +
{% trans 'Category' %} + {{ object.writeoff_category.name }}
+ {{ object.writeoff_category.description }} +
{% trans 'Timestamp' %}{{ object.placed_at|date:"l d F H:i" }}
{% trans 'Event' %}{{ object.event }}
{% trans 'Amount' %}€ {{ object.amount|floatformat:2 }}
{% trans 'Handled by' %}{{ object.added_by.get_full_name }}
+
+
+

{% trans 'Items' %}

+ + + + + + + + + {% for purchase in object.writeoff_purchases.all %} + + + + + {% endfor %} + +
{% trans 'Product' %}{% trans 'Price' %}
{{ purchase.amount }} × {{ purchase.product }}€ {{ purchase.price|floatformat:2 }}
+
+
+{% endblock content %} From dde0d34eef2d9a90fdf730504431000e20cdd095 Mon Sep 17 00:00:00 2001 From: Kevin Alberts Date: Fri, 11 Oct 2024 12:36:47 +0200 Subject: [PATCH 5/5] Add translations --- locale/nl/LC_MESSAGES/django.mo | Bin 28048 -> 28479 bytes locale/nl/LC_MESSAGES/django.po | 2536 ++++++++----------------------- templates/billing/juliana.html | 4 +- 3 files changed, 604 insertions(+), 1936 deletions(-) diff --git a/locale/nl/LC_MESSAGES/django.mo b/locale/nl/LC_MESSAGES/django.mo index d7e6bfc132340ba2aa4cbe94da457e5d8ea02f28..0dba83093f2c50527c004632a25e0fa6cd2c0012 100644 GIT binary patch delta 8801 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'\n" +"POT-Creation-Date: 2024-10-11 12:32+0200\n" +"PO-Revision-Date: 2024-10-11 12:35+0018\n" +"Last-Translator: b'Kevin Alberts '\n" "Language-Team: WWW-commissie \n" "Language: nl\n" "MIME-Version: 1.0\n" @@ -17,9 +17,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1)\n" "X-Translated-Using: django-rosetta 0.9.6\n" -#: alexia/apps/billing/forms.py:51 alexia/apps/consumption/forms.py:118 -#: templates/billing/order_detail.html:122 templates/billing/order_list.html:12 -#: templates/consumption/consumptionform_list.html:13 +#: alexia/apps/billing/forms.py:51 alexia/apps/consumption/forms.py:118 templates/billing/order_detail.html:125 templates/billing/order_list.html:12 templates/consumption/consumptionform_list.html:13 msgid "Export" msgstr "Exporteren" @@ -31,275 +29,248 @@ msgstr "Begintijd" msgid "Till time" msgstr "Eindtijd" -#: alexia/apps/billing/forms.py:63 templates/billing/pricegroup_form.html:7 -#: templates/billing/pricegroup_form.html:17 +#: alexia/apps/billing/forms.py:63 templates/billing/pricegroup_form.html:7 templates/billing/pricegroup_form.html:17 msgid "New price group" msgstr "Nieuwe prijsgroep" -#: alexia/apps/billing/models.py:23 alexia/apps/billing/models.py:45 -#: alexia/apps/billing/models.py:140 alexia/apps/billing/models.py:228 -#: alexia/apps/billing/models.py:343 alexia/apps/organization/models.py:146 -#: alexia/apps/organization/models.py:167 alexia/apps/scheduling/models.py:28 -#: alexia/apps/scheduling/models.py:206 +#: alexia/apps/billing/models.py:24 alexia/apps/billing/models.py:46 alexia/apps/billing/models.py:141 alexia/apps/billing/models.py:229 alexia/apps/billing/models.py:344 alexia/apps/organization/models.py:146 alexia/apps/organization/models.py:167 alexia/apps/scheduling/models.py:28 alexia/apps/scheduling/models.py:206 msgid "organization" msgstr "organisatie" -#: alexia/apps/billing/models.py:26 alexia/apps/billing/models.py:48 -#: alexia/apps/billing/models.py:91 alexia/apps/billing/models.py:337 -#: alexia/apps/consumption/models.py:14 alexia/apps/organization/models.py:21 -#: alexia/apps/organization/models.py:131 alexia/apps/scheduling/models.py:29 -#: alexia/apps/scheduling/models.py:60 alexia/apps/scheduling/models.py:208 +#: alexia/apps/billing/models.py:27 alexia/apps/billing/models.py:49 alexia/apps/billing/models.py:92 alexia/apps/billing/models.py:338 alexia/apps/consumption/models.py:14 alexia/apps/organization/models.py:21 alexia/apps/organization/models.py:131 alexia/apps/scheduling/models.py:29 alexia/apps/scheduling/models.py:60 alexia/apps/scheduling/models.py:208 msgid "name" msgstr "naam" -#: alexia/apps/billing/models.py:30 alexia/apps/billing/models.py:71 -#: alexia/apps/billing/models.py:135 +#: alexia/apps/billing/models.py:31 alexia/apps/billing/models.py:72 alexia/apps/billing/models.py:136 msgid "product group" msgstr "productgroep" -#: alexia/apps/billing/models.py:31 alexia/apps/billing/models.py:53 +#: alexia/apps/billing/models.py:32 alexia/apps/billing/models.py:54 msgid "product groups" msgstr "productgroepen" -#: alexia/apps/billing/models.py:58 alexia/apps/billing/models.py:70 +#: alexia/apps/billing/models.py:59 alexia/apps/billing/models.py:71 msgid "price group" msgstr "prijsgroep" -#: alexia/apps/billing/models.py:59 +#: alexia/apps/billing/models.py:60 msgid "price groups" msgstr "prijsgroepen" -#: alexia/apps/billing/models.py:72 alexia/apps/billing/models.py:177 -#: alexia/apps/billing/models.py:326 alexia/apps/billing/models.py:392 +#: alexia/apps/billing/models.py:73 alexia/apps/billing/models.py:178 alexia/apps/billing/models.py:327 alexia/apps/billing/models.py:399 msgid "price" msgstr "prijs" -#: alexia/apps/billing/models.py:76 +#: alexia/apps/billing/models.py:77 msgid "selling price" msgstr "verkoopprijs" -#: alexia/apps/billing/models.py:77 +#: alexia/apps/billing/models.py:78 msgid "selling prices" msgstr "verkoopprijzen" -#: alexia/apps/billing/models.py:80 +#: alexia/apps/billing/models.py:81 #, python-brace-format msgid "{product} for {price}" msgstr "{product} voor {price}" -#: alexia/apps/billing/models.py:92 +#: alexia/apps/billing/models.py:93 msgid "shortcut" msgstr "shortcut" -#: alexia/apps/billing/models.py:94 -#: templates/billing/permanentproduct_detail.html:48 -#: templates/billing/temporaryproduct_detail.html:44 +#: alexia/apps/billing/models.py:95 templates/billing/permanentproduct_detail.html:48 templates/billing/temporaryproduct_detail.html:44 msgid "Text color" msgstr "Tekstkleur" -#: alexia/apps/billing/models.py:96 +#: alexia/apps/billing/models.py:97 msgid "Text color for Juliana" msgstr "Tekstkleur voor Juliana" -#: alexia/apps/billing/models.py:101 -#: templates/billing/permanentproduct_detail.html:52 -#: templates/billing/temporaryproduct_detail.html:48 +#: alexia/apps/billing/models.py:102 templates/billing/permanentproduct_detail.html:52 templates/billing/temporaryproduct_detail.html:48 msgid "Background color" msgstr "Achtergrondkleur" -#: alexia/apps/billing/models.py:103 +#: alexia/apps/billing/models.py:104 msgid "Background color for Juliana" msgstr "Achtergrondkleur voor Juliana" -#: alexia/apps/billing/models.py:142 alexia/apps/scheduling/models.py:210 +#: alexia/apps/billing/models.py:143 alexia/apps/scheduling/models.py:210 msgid "position" msgstr "positie" -#: alexia/apps/billing/models.py:146 alexia/apps/billing/models.py:324 -#: alexia/apps/billing/models.py:390 alexia/apps/consumption/models.py:137 -#: alexia/apps/consumption/models.py:189 +#: alexia/apps/billing/models.py:147 alexia/apps/billing/models.py:325 alexia/apps/billing/models.py:397 alexia/apps/consumption/models.py:137 alexia/apps/consumption/models.py:189 msgid "product" msgstr "product" -#: alexia/apps/billing/models.py:147 +#: alexia/apps/billing/models.py:148 msgid "products" msgstr "producten" -#: alexia/apps/billing/models.py:175 alexia/apps/billing/models.py:270 -#: alexia/apps/billing/models.py:349 alexia/apps/consumption/models.py:50 -#: alexia/apps/scheduling/models.py:107 alexia/apps/scheduling/models.py:240 +#: alexia/apps/billing/models.py:176 alexia/apps/billing/models.py:271 alexia/apps/billing/models.py:356 alexia/apps/consumption/models.py:50 alexia/apps/scheduling/models.py:107 alexia/apps/scheduling/models.py:240 msgid "event" msgstr "activiteit" -#: alexia/apps/billing/models.py:180 +#: alexia/apps/billing/models.py:181 msgid "temporary product" msgstr "tijdelijk product" -#: alexia/apps/billing/models.py:181 +#: alexia/apps/billing/models.py:182 msgid "temporary products" msgstr "tijdelijke producten" -#: alexia/apps/billing/models.py:198 +#: alexia/apps/billing/models.py:199 msgid "identifier" msgstr "identifier" -#: alexia/apps/billing/models.py:199 alexia/apps/organization/models.py:135 -#: alexia/apps/scheduling/models.py:32 +#: alexia/apps/billing/models.py:200 alexia/apps/organization/models.py:135 alexia/apps/scheduling/models.py:32 msgid "is active" msgstr "is actief" -#: alexia/apps/billing/models.py:200 +#: alexia/apps/billing/models.py:201 msgid "registered at" msgstr "geregistreerd op" -#: alexia/apps/billing/models.py:201 alexia/apps/billing/models.py:222 -#: alexia/apps/organization/models.py:38 alexia/apps/organization/models.py:53 -#: alexia/apps/organization/models.py:162 +#: alexia/apps/billing/models.py:202 alexia/apps/billing/models.py:223 alexia/apps/organization/models.py:38 alexia/apps/organization/models.py:53 alexia/apps/organization/models.py:162 msgid "user" msgstr "gebruiker" -#: alexia/apps/billing/models.py:202 +#: alexia/apps/billing/models.py:203 msgid "managed by" msgstr "beheerd door" -#: alexia/apps/billing/models.py:205 +#: alexia/apps/billing/models.py:206 msgid "RFID card" msgstr "RFID-kaart" -#: alexia/apps/billing/models.py:206 templates/profile/profile.html:86 +#: alexia/apps/billing/models.py:207 templates/profile/profile.html:86 msgid "RFID cards" msgstr "RFID-kaarten" -#: alexia/apps/billing/models.py:213 alexia/apps/billing/models.py:245 +#: alexia/apps/billing/models.py:214 alexia/apps/billing/models.py:246 msgid "owner" msgstr "eigenaar" -#: alexia/apps/billing/models.py:230 +#: alexia/apps/billing/models.py:231 msgid "start date" msgstr "begindatum" -#: alexia/apps/billing/models.py:231 +#: alexia/apps/billing/models.py:232 msgid "end date" msgstr "einddatum" -#: alexia/apps/billing/models.py:234 alexia/apps/billing/models.py:275 +#: alexia/apps/billing/models.py:235 alexia/apps/billing/models.py:276 msgid "authorization" msgstr "autorisatie" -#: alexia/apps/billing/models.py:235 +#: alexia/apps/billing/models.py:236 msgid "authorizations" msgstr "autorisaties" -#: alexia/apps/billing/models.py:238 +#: alexia/apps/billing/models.py:239 #, python-brace-format msgid "{user} of {organization}" msgstr "{user} van {organization}" -#: alexia/apps/billing/models.py:277 alexia/apps/billing/models.py:350 +#: alexia/apps/billing/models.py:278 alexia/apps/billing/models.py:357 msgid "placed at" msgstr "geplaatst op" -#: alexia/apps/billing/models.py:279 +#: alexia/apps/billing/models.py:280 msgid "synchronized" msgstr "gesynchroniseerd" -#: alexia/apps/billing/models.py:282 +#: alexia/apps/billing/models.py:283 msgid "Designates whether this transaction is imported by the organization." msgstr "Geeft aan of deze transactie al is gesynchroniseerd." -#: alexia/apps/billing/models.py:288 alexia/apps/billing/models.py:354 +#: alexia/apps/billing/models.py:289 alexia/apps/billing/models.py:361 msgid "added by" msgstr "toegevoegd door" -#: alexia/apps/billing/models.py:291 alexia/apps/billing/models.py:325 -#: alexia/apps/billing/models.py:357 alexia/apps/billing/models.py:391 -#: alexia/apps/consumption/models.py:191 +#: alexia/apps/billing/models.py:292 alexia/apps/billing/models.py:326 alexia/apps/billing/models.py:364 alexia/apps/billing/models.py:398 alexia/apps/consumption/models.py:191 msgid "amount" msgstr "aantal" -#: alexia/apps/billing/models.py:292 +#: alexia/apps/billing/models.py:293 msgid "rfid card" msgstr "RFID-kaart" -#: alexia/apps/billing/models.py:296 alexia/apps/billing/models.py:323 -#: alexia/apps/billing/models.py:389 +#: alexia/apps/billing/models.py:297 alexia/apps/billing/models.py:324 alexia/apps/billing/models.py:396 msgid "order" msgstr "transactie" -#: alexia/apps/billing/models.py:297 +#: alexia/apps/billing/models.py:298 msgid "orders" msgstr "transacties" -#: alexia/apps/billing/models.py:300 +#: alexia/apps/billing/models.py:301 #, python-brace-format msgid "{user} at {time} on {event}" msgstr "{user} om {time} bij {event}" -#: alexia/apps/billing/models.py:318 +#: alexia/apps/billing/models.py:319 msgid "debtor" msgstr "debiteur" -#: alexia/apps/billing/models.py:329 alexia/apps/billing/models.py:395 +#: alexia/apps/billing/models.py:330 alexia/apps/billing/models.py:402 msgid "purchase" msgstr "aankoop" -#: alexia/apps/billing/models.py:330 alexia/apps/billing/models.py:396 +#: alexia/apps/billing/models.py:331 alexia/apps/billing/models.py:403 msgid "purchases" msgstr "aankopen" -#: alexia/apps/billing/models.py:338 -#, fuzzy +#: alexia/apps/billing/models.py:339 #| msgid "description" msgid "short description" -msgstr "omschrijving" +msgstr "korte omschrijving" -#: alexia/apps/billing/models.py:339 alexia/apps/organization/models.py:23 -#: alexia/apps/organization/models.py:133 +#: alexia/apps/billing/models.py:340 alexia/apps/organization/models.py:23 alexia/apps/organization/models.py:133 msgid "color" msgstr "kleur" -#: alexia/apps/billing/models.py:345 -#, fuzzy +#: alexia/apps/billing/models.py:346 #| msgid "Active" msgid "active" -msgstr "Actief" +msgstr "actief" + +#: alexia/apps/billing/models.py:349 +#, python-brace-format +#| msgid "{user} of {organization}" +msgid "{name} for {organization}" +msgstr "{name} van {organization}" -#: alexia/apps/billing/models.py:362 +#: alexia/apps/billing/models.py:369 msgid "writeoff category" -msgstr "Afschrijf categorie" +msgstr "Afschrijvingscategorie" -#: alexia/apps/billing/models.py:367 +#: alexia/apps/billing/models.py:374 msgid "writeoff order" -msgstr "Afschrijf product" +msgstr "Afschrijvingstransactie" -#: alexia/apps/billing/models.py:368 +#: alexia/apps/billing/models.py:375 msgid "writeoff orders" -msgstr "Afschrijf producten" +msgstr "Afschrijvingstransacties" -#: alexia/apps/billing/models.py:371 -#, fuzzy, python-brace-format +#: alexia/apps/billing/models.py:378 +#, python-brace-format #| msgid "{user} at {time} on {event}" msgid "{time} on {event}" -msgstr "{user} om {time} bij {event}" +msgstr "{time} bij {event}" -#: alexia/apps/billing/views.py:50 alexia/apps/consumption/views.py:73 +#: alexia/apps/billing/views.py:49 alexia/apps/consumption/views.py:73 msgid "You are not a tender for this event" msgstr "Je bent geen tapper bij deze borrel!" -#: alexia/apps/billing/views.py:52 +#: alexia/apps/billing/views.py:51 msgid "This event is not open" msgstr "Deze borrel begint nog niet!" -#: alexia/apps/config.py:9 templates/base_app.html:48 -#: templates/billing/order_detail.html:40 templates/profile/profile.html:49 +#: alexia/apps/config.py:9 templates/base_app.html:48 templates/billing/order_detail.html:40 templates/profile/profile.html:49 msgid "Billing" msgstr "FinanciĆ«n" -#: alexia/apps/config.py:14 templates/base_app.html:62 -#: templates/consumption/consumptionform_detail.html:90 -#: templates/consumption/consumptionform_detail.html:92 -#: templates/consumption/dcf_check.html:68 -#: templates/consumption/pdf/page.html:23 +#: alexia/apps/config.py:14 templates/base_app.html:62 templates/consumption/consumptionform_detail.html:90 templates/consumption/consumptionform_detail.html:92 templates/consumption/dcf_check.html:68 templates/consumption/pdf/page.html:23 msgid "Consumption" msgstr "Verbruik" @@ -307,17 +278,7 @@ msgstr "Verbruik" msgid "General" msgstr "Generiek" -#: alexia/apps/config.py:24 alexia/apps/scheduling/forms.py:73 -#: templates/billing/permanentproduct_detail.html:31 -#: templates/billing/pricegroup_detail.html:31 -#: templates/consumption/consumptionform_list.html:31 -#: templates/consumption/consumptionform_list.html:68 -#: templates/consumption/pdf/page.html:9 templates/general/about.html:40 -#: templates/organization/certificate_form.html:27 -#: templates/profile/profile.html:121 templates/profile/profile.html:146 -#: templates/scheduling/event_calendar.html:26 -#: templates/scheduling/event_list.html:37 -#: templates/scheduling/mailtemplate_detail.html:24 +#: alexia/apps/config.py:24 alexia/apps/scheduling/forms.py:73 templates/billing/permanentproduct_detail.html:31 templates/billing/pricegroup_detail.html:31 templates/consumption/consumptionform_list.html:31 templates/consumption/consumptionform_list.html:68 templates/consumption/pdf/page.html:9 templates/general/about.html:40 templates/organization/certificate_form.html:27 templates/profile/profile.html:121 templates/profile/profile.html:146 templates/scheduling/event_calendar.html:26 templates/scheduling/event_list.html:37 templates/scheduling/mailtemplate_detail.html:24 msgid "Organization" msgstr "Organisatie" @@ -354,25 +315,18 @@ msgid "I declare that I have cleaned the rooms" msgstr "Ik verklaar dat de ruimtes schoongemaakt zijn" #: alexia/apps/consumption/forms.py:96 -msgid "" -"After each event the rooms have to cleaned according to the cleaning " -"checklist." -msgstr "" -"Na elk evenement moeten de ruimtes schoongemaakt worden aan de hand van de " -"schoonmaakchecklist." +msgid "After each event the rooms have to cleaned according to the cleaning checklist." +msgstr "Na elk evenement moeten de ruimtes schoongemaakt worden aan de hand van de schoonmaakchecklist." #: alexia/apps/consumption/forms.py:99 msgid "I declare that this form has been filled in truthfully" msgstr "Ik verklaar dat dit formulier naar waarheid is ingevuld" #: alexia/apps/consumption/forms.py:100 -msgid "" -"I am sure that the values above are filled in correct and has been verified." +msgid "I am sure that the values above are filled in correct and has been verified." msgstr "Ik weet zeker dat bovenstaande gegevens gecheckt zijn en kloppen." -#: alexia/apps/consumption/forms.py:120 -#: templates/billing/order_export_result.html:17 -#: templates/billing/order_year.html:15 +#: alexia/apps/consumption/forms.py:120 templates/billing/order_export_result.html:17 templates/billing/order_year.html:15 msgid "Month" msgstr "Maand" @@ -409,8 +363,7 @@ msgid "has flowmeter" msgstr "heeft flowmeter" #: alexia/apps/consumption/models.py:37 -msgid "" -"Designates wheter apart from weight, this product also uses a flowmeter." +msgid "Designates wheter apart from weight, this product also uses a flowmeter." msgstr "Geeft aan dat naast gewicht, dit product ook flowmeters gebruikt." #: alexia/apps/consumption/models.py:41 @@ -433,8 +386,7 @@ msgstr "afgerond op" msgid "comments" msgstr "commentaar" -#: alexia/apps/consumption/models.py:62 -#: templates/consumption/consumptionform_detail.html:3 +#: alexia/apps/consumption/models.py:62 templates/consumption/consumptionform_detail.html:3 msgid "consumption form" msgstr "verbruiksformulier" @@ -510,10 +462,9 @@ msgid "This consumption form has been completed." msgstr "Dit verbruiksformulier is al afgerond." #: alexia/apps/general/views.py:129 -#, fuzzy #| msgid "organizations" msgid "This organization is inactive." -msgstr "organisatie" +msgstr "Deze organisatie is inactief." #: alexia/apps/organization/admin.py:56 msgid "Permissions" @@ -531,8 +482,7 @@ msgstr "Gebruikersnaam" msgid "Student or employee account (e.g. s0000000 or m0000000)" msgstr "Student- of medewerkersaccount (bijv. s0000000 of m0000000)" -#: alexia/apps/organization/forms.py:52 -#: templates/organization/membership_detail.html:52 +#: alexia/apps/organization/forms.py:52 templates/organization/membership_detail.html:52 msgid "Bartender nickname" msgstr "Tappersbijnaam" @@ -565,21 +515,16 @@ msgid "has IVA-certificate" msgstr "heeft IVA-certificaat" #: alexia/apps/organization/models.py:60 -msgid "" -"Override for an user to indicate IVA rights without uploading a certificate." -msgstr "" -"Override voor een gebruiker om IVA-rechten te hebben zonder certificaat." +msgid "Override for an user to indicate IVA rights without uploading a certificate." +msgstr "Override voor een gebruiker om IVA-rechten te hebben zonder certificaat." #: alexia/apps/organization/models.py:64 msgid "has BHV-certificate" msgstr "heeft BHV-diploma" #: alexia/apps/organization/models.py:67 -msgid "" -"Designates that this user has a valid, non-expired BHV (Emergency Response " -"Officer) certificate." -msgstr "" -"Geeft aan dat deze gebruiker een geldig, niet verlopen BHV-diploma heeft." +msgid "Designates that this user has a valid, non-expired BHV (Emergency Response Officer) certificate." +msgstr "Geeft aan dat deze gebruiker een geldig, niet verlopen BHV-diploma heeft." #: alexia/apps/organization/models.py:71 msgid "is foundation manager" @@ -619,7 +564,7 @@ msgstr "wijst tappers aan" #: alexia/apps/organization/models.py:136 msgid "writeoff enabled" -msgstr "Afschrijven ingeschakeld" +msgstr "Afschrijvingen ingeschakeld" #: alexia/apps/organization/models.py:140 msgid "users" @@ -654,8 +599,7 @@ msgstr "lidmaatschappen" msgid "%(user)s of %(organization)s" msgstr "%(user)s van %(organization)s" -#: alexia/apps/organization/models.py:221 -#: alexia/apps/organization/models.py:234 +#: alexia/apps/organization/models.py:221 alexia/apps/organization/models.py:234 msgid "certificate" msgstr "certificaat" @@ -679,10 +623,7 @@ msgstr "IVA certificaat van" msgid "Flags" msgstr "Indicatoren" -#: alexia/apps/scheduling/admin.py:22 -#: templates/consumption/consumptionform_detail.html:77 -#: templates/consumption/dcf_check.html:93 -#: templates/consumption/pdf/page.html:64 +#: alexia/apps/scheduling/admin.py:22 templates/consumption/consumptionform_detail.html:77 templates/consumption/dcf_check.html:93 templates/consumption/pdf/page.html:64 msgid "Comments" msgstr "Commentaar" @@ -808,7 +749,6 @@ msgid "Assigned" msgstr "Toegewezen" #: alexia/apps/scheduling/models.py:197 -#: env/lib/python3.9/site-packages/django/forms/widgets.py:712 msgid "Yes" msgstr "Ja" @@ -817,7 +757,6 @@ msgid "Maybe" msgstr "Misschien" #: alexia/apps/scheduling/models.py:199 -#: env/lib/python3.9/site-packages/django/forms/widgets.py:713 msgid "No" msgstr "Nee" @@ -879,1404 +818,19 @@ msgstr "Nederlands" #: alexia/conf/settings/base.py:36 msgid "English" -msgstr "Engels" - -#: alexia/core/validators.py:6 -msgid "Enter a valid hexadecimal color" -msgstr "Voer een geldige hexadecimale kleur in" - -#: alexia/core/validators.py:17 -msgid "Enter a valid username" -msgstr "Voer een geldige gebruikersnaam in" - -#: alexia/forms/mixins.py:22 templates/consumption/dcf.html:34 -#: templates/registration/register.html:17 -msgid "Save" -msgstr "Opslaan" - -#: env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:129 -#: env/lib/python3.9/site-packages/crispy_forms/tests/test_form_helper.py:139 -#: env/lib/python3.9/site-packages/django/forms/fields.py:53 -msgid "This field is required." -msgstr "" - -#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout.py:391 -msgid "i18n text" -msgstr "" - -#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout.py:393 -msgid "i18n legend" -msgstr "" - -#: env/lib/python3.9/site-packages/crispy_forms/tests/test_layout_objects.py:134 -#: env/lib/python3.9/site-packages/django/core/validators.py:31 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid value." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/contrib/messages/apps.py:7 -msgid "Messages" -msgstr "" - -#: env/lib/python3.9/site-packages/django/contrib/sitemaps/apps.py:7 -msgid "Site Maps" -msgstr "" - -#: env/lib/python3.9/site-packages/django/contrib/staticfiles/apps.py:9 -msgid "Static Files" -msgstr "" - -#: env/lib/python3.9/site-packages/django/contrib/syndication/apps.py:7 -#, fuzzy -#| msgid "Specification" -msgid "Syndication" -msgstr "Specificatie" - -#: env/lib/python3.9/site-packages/django/core/paginator.py:45 -msgid "That page number is not an integer" -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/paginator.py:47 -msgid "That page number is less than 1" -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/paginator.py:52 -msgid "That page contains no results" -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:102 -#: env/lib/python3.9/site-packages/django/forms/fields.py:658 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid URL." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/core/validators.py:154 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid integer." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/core/validators.py:165 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid email address." -msgstr "Voer een geldige gebruikersnaam in" - -#. Translators: "letters" means latin letters: a-z and A-Z. -#: env/lib/python3.9/site-packages/django/core/validators.py:239 -msgid "" -"Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:246 -msgid "" -"Enter a valid 'slug' consisting of Unicode letters, numbers, underscores, or " -"hyphens." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:255 -#: env/lib/python3.9/site-packages/django/core/validators.py:275 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid IPv4 address." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/core/validators.py:260 -#: env/lib/python3.9/site-packages/django/core/validators.py:276 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid IPv6 address." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/core/validators.py:270 -#: env/lib/python3.9/site-packages/django/core/validators.py:274 -msgid "Enter a valid IPv4 or IPv6 address." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:304 -msgid "Enter only digits separated by commas." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:310 -#, python-format -msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:342 -#, python-format -msgid "Ensure this value is less than or equal to %(limit_value)s." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:351 -#, python-format -msgid "Ensure this value is greater than or equal to %(limit_value)s." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:361 -#, python-format -msgid "" -"Ensure this value has at least %(limit_value)d character (it has " -"%(show_value)d)." -msgid_plural "" -"Ensure this value has at least %(limit_value)d characters (it has " -"%(show_value)d)." -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:376 -#, python-format -msgid "" -"Ensure this value has at most %(limit_value)d character (it has " -"%(show_value)d)." -msgid_plural "" -"Ensure this value has at most %(limit_value)d characters (it has " -"%(show_value)d)." -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:395 -#: env/lib/python3.9/site-packages/django/forms/fields.py:290 -#: env/lib/python3.9/site-packages/django/forms/fields.py:325 -msgid "Enter a number." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:397 -#, 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] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:402 -#, 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] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:407 -#, python-format -msgid "" -"Ensure that there are no more than %(max)s digit before the decimal point." -msgid_plural "" -"Ensure that there are no more than %(max)s digits before the decimal point." -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:469 -#, python-format -msgid "" -"File extension '%(extension)s' is not allowed. Allowed extensions are: " -"'%(allowed_extensions)s'." -msgstr "" - -#: env/lib/python3.9/site-packages/django/core/validators.py:521 -msgid "Null characters are not allowed." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/base.py:1162 -#: env/lib/python3.9/site-packages/django/forms/models.py:756 -#: templates/base.html:32 templates/general/about.html:23 -#: templates/general/about.html:34 -msgid "and" -msgstr "en" - -#: env/lib/python3.9/site-packages/django/db/models/base.py:1164 -#, python-format -msgid "%(model_name)s with this %(field_labels)s already exists." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:104 -#, python-format -msgid "Value %(value)r is not a valid choice." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:105 -msgid "This field cannot be null." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:106 -msgid "This field cannot be blank." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:107 -#, python-format -msgid "%(model_name)s with this %(field_label)s already exists." -msgstr "" - -#. Translators: The 'lookup_type' is one of 'date', 'year' or 'month'. -#. Eg: "Title must be unique for pub_date year" -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:111 -#, python-format -msgid "" -"%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:128 -#, python-format -msgid "Field of type: %(field_type)s" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:899 -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1766 -msgid "Integer" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:903 -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1764 -#, python-format -msgid "'%(value)s' value must be an integer." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:978 -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1832 -msgid "Big (8 byte) integer" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:990 -#, python-format -msgid "'%(value)s' value must be either True or False." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:991 -#, python-format -msgid "'%(value)s' value must be either True, False, or None." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:993 -msgid "Boolean (Either True or False)" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1034 -#, python-format -msgid "String (up to %(max_length)s)" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1098 -msgid "Comma-separated integers" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1147 -#, python-format -msgid "" -"'%(value)s' value has an invalid date format. It must be in YYYY-MM-DD " -"format." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1149 -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1292 -#, python-format -msgid "" -"'%(value)s' value has the correct format (YYYY-MM-DD) but it is an invalid " -"date." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1152 -msgid "Date (without time)" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1290 -#, python-format -msgid "" -"'%(value)s' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[." -"uuuuuu]][TZ] format." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1294 -#, python-format -msgid "" -"'%(value)s' value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]" -"[TZ]) but it is an invalid date/time." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1298 -msgid "Date (with time)" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1446 -#, python-format -msgid "'%(value)s' value must be a decimal number." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1448 -#, fuzzy -#| msgid "ID number" -msgid "Decimal number" -msgstr "Identificatienr." - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1587 -#, python-format -msgid "" -"'%(value)s' value has an invalid format. It must be in [DD] [HH:[MM:]]ss[." -"uuuuuu] format." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1590 -#, fuzzy -#| msgid "Autorization" -msgid "Duration" -msgstr "Autorisatie" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1640 -#: templates/organization/membership_detail.html:48 -#: templates/profile/profile.html:15 -msgid "Email address" -msgstr "E-mailadres" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1663 -#, fuzzy -#| msgid "File format" -msgid "File path" -msgstr "Bestandsformaat" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1729 -#, python-format -msgid "'%(value)s' value must be a float." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1731 -msgid "Floating point number" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1848 -#, fuzzy -#| msgid "Email address" -msgid "IPv4 address" -msgstr "E-mailadres" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1879 -#, fuzzy -#| msgid "Email address" -msgid "IP address" -msgstr "E-mailadres" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1959 -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1960 -#, python-format -msgid "'%(value)s' value must be either None, True or False." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1962 -msgid "Boolean (Either True, False or None)" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1997 -msgid "Positive integer" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2010 -msgid "Positive small integer" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2024 -#, python-format -msgid "Slug (up to %(max_length)s)" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2056 -msgid "Small integer" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2063 -msgid "Text" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2091 -#, python-format -msgid "" -"'%(value)s' value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] " -"format." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2093 -#, python-format -msgid "" -"'%(value)s' value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an " -"invalid time." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2096 -#: templates/scheduling/event_bartender.html:14 -#: templates/scheduling/event_list.html:36 -msgid "Time" -msgstr "Tijd" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2222 -msgid "URL" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2244 -#, fuzzy -#| msgid "additional data" -msgid "Raw binary data" -msgstr "aanvullende gegevens" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2294 -#, python-format -msgid "'%(value)s' is not a valid UUID." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/__init__.py:2296 -#, fuzzy -#| msgid "iCal identifier" -msgid "Universally unique identifier" -msgstr "iCal identificatie" - -#: env/lib/python3.9/site-packages/django/db/models/fields/files.py:221 -msgid "File" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/files.py:360 -msgid "Image" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:778 -#, python-format -msgid "%(model)s instance with %(field)s %(value)r does not exist." -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:780 -msgid "Foreign Key (type determined by related field)" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1007 -msgid "One-to-one relationship" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1057 -#, python-format -msgid "%(from)s-%(to)s relationship" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1058 -#, python-format -msgid "%(from)s-%(to)s relationships" -msgstr "" - -#: env/lib/python3.9/site-packages/django/db/models/fields/related.py:1100 -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 -#: env/lib/python3.9/site-packages/django/forms/boundfield.py:146 -msgid ":?.!" -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:245 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a whole number." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:396 -#: env/lib/python3.9/site-packages/django/forms/fields.py:1126 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid date." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:420 -#: env/lib/python3.9/site-packages/django/forms/fields.py:1127 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid time." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:442 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid date/time." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:471 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid duration." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:472 -#, python-brace-format -msgid "The number of days must be between {min_days} and {max_days}." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:532 -msgid "No file was submitted. Check the encoding type on the form." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:533 -msgid "No file was submitted." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:534 -msgid "The submitted file is empty." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:536 -#, python-format -msgid "Ensure this filename has at most %(max)d character (it has %(length)d)." -msgid_plural "" -"Ensure this filename has at most %(max)d characters (it has %(length)d)." -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:539 -msgid "Please either submit a file or check the clear checkbox, not both." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:600 -msgid "" -"Upload a valid image. The file you uploaded was either not an image or a " -"corrupted image." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:762 -#: env/lib/python3.9/site-packages/django/forms/fields.py:852 -#: env/lib/python3.9/site-packages/django/forms/models.py:1270 -#, python-format -msgid "Select a valid choice. %(value)s is not one of the available choices." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:853 -#: env/lib/python3.9/site-packages/django/forms/fields.py:968 -#: env/lib/python3.9/site-packages/django/forms/models.py:1269 -msgid "Enter a list of values." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:969 -msgid "Enter a complete value." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/fields.py:1185 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter a valid UUID." -msgstr "Voer een geldige gebruikersnaam in" - -#. Translators: This is the default suffix added to form field labels -#: env/lib/python3.9/site-packages/django/forms/forms.py:86 -msgid ":" -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/forms.py:212 -#, python-format -msgid "(Hidden field %(name)s) %(error)s" -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/formsets.py:91 -msgid "ManagementForm data is missing or has been tampered with" -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/formsets.py:338 -#, python-format -msgid "Please submit %d or fewer forms." -msgid_plural "Please submit %d or fewer forms." -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/forms/formsets.py:345 -#, python-format -msgid "Please submit %d or more forms." -msgid_plural "Please submit %d or more forms." -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/forms/formsets.py:371 -#: env/lib/python3.9/site-packages/django/forms/formsets.py:373 -#, fuzzy -#| msgid "Orders" -msgid "Order" -msgstr "Transacties" - -#: env/lib/python3.9/site-packages/django/forms/formsets.py:375 -#: templates/billing/permanentproduct_confirm_delete.html:20 -#: templates/billing/permanentproduct_detail.html:17 -#: templates/billing/permanentproduct_list.html:44 -#: templates/billing/pricegroup_confirm_delete.html:21 -#: templates/billing/pricegroup_detail.html:17 -#: templates/billing/pricegroup_detail.html:59 -#: templates/billing/pricegroup_list.html:35 -#: templates/billing/productgroup_confirm_delete.html:19 -#: templates/billing/productgroup_detail.html:17 -#: templates/billing/productgroup_detail.html:44 -#: templates/billing/productgroup_detail.html:88 -#: templates/billing/productgroup_list.html:35 -#: templates/billing/sellingprice_confirm_delete.html:17 -#: templates/billing/temporaryproduct_confirm_delete.html:14 -#: templates/billing/temporaryproduct_detail.html:17 -#: templates/consumption/partials/unit_consumption.html:15 -#: templates/consumption/partials/weight_consumption.html:19 -#: templates/organization/membership_confirm_delete.html:20 -#: templates/organization/membership_list.html:89 -#: templates/scheduling/event_detail.html:103 -msgid "Delete" -msgstr "Verwijderen" - -#: env/lib/python3.9/site-packages/django/forms/models.py:751 -#, python-format -msgid "Please correct the duplicate data for %(field)s." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/models.py:755 -#, python-format -msgid "Please correct the duplicate data for %(field)s, which must be unique." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/models.py:761 -#, python-format -msgid "" -"Please correct the duplicate data for %(field_name)s which must be unique " -"for the %(lookup)s in %(date_field)s." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/models.py:770 -msgid "Please correct the duplicate values below." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/models.py:1091 -msgid "The inline value did not match the parent instance." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/models.py:1158 -msgid "Select a valid choice. That choice is not one of the available choices." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/models.py:1272 -#, python-format -msgid "\"%(pk)s\" is not a valid value." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/utils.py:162 -#, python-format -msgid "" -"%(datetime)s couldn't be interpreted in time zone %(current_timezone)s; it " -"may be ambiguous or it may not exist." -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/widgets.py:395 -msgid "Clear" -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/widgets.py:396 -msgid "Currently" -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/widgets.py:397 -msgid "Change" -msgstr "" - -#: env/lib/python3.9/site-packages/django/forms/widgets.py:711 -#: templates/scheduling/event_detail.html:142 -msgid "Unknown" -msgstr "Onbekend" - -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:788 -msgid "yes,no,maybe" -msgstr "" - -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:817 -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:834 -#, python-format -msgid "%(size)d byte" -msgid_plural "%(size)d bytes" -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:836 -#, python-format -msgid "%s KB" -msgstr "" - -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:838 -#, python-format -msgid "%s MB" -msgstr "" - -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:840 -#, python-format -msgid "%s GB" -msgstr "" - -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:842 -#, python-format -msgid "%s TB" -msgstr "" - -#: env/lib/python3.9/site-packages/django/template/defaultfilters.py:844 -#, python-format -msgid "%s PB" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dateformat.py:62 -msgid "p.m." -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dateformat.py:63 -msgid "a.m." -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dateformat.py:68 -msgid "PM" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dateformat.py:69 -msgid "AM" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dateformat.py:150 -#, fuzzy -#| msgid "Begin weight" -msgid "midnight" -msgstr "Begingewicht" - -#: env/lib/python3.9/site-packages/django/utils/dateformat.py:152 -msgid "noon" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 -#: templates/scheduling/event_calendar.html:81 -msgid "Monday" -msgstr "maandag" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 -#: templates/scheduling/event_calendar.html:81 -msgid "Tuesday" -msgstr "dinsdag" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 -#: templates/scheduling/event_calendar.html:81 -msgid "Wednesday" -msgstr "woensdag" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 -#: templates/scheduling/event_calendar.html:82 -msgid "Thursday" -msgstr "donderdag" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:6 -#: templates/scheduling/event_calendar.html:82 -msgid "Friday" -msgstr "vrijdag" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:7 -#: templates/scheduling/event_calendar.html:82 -msgid "Saturday" -msgstr "zaterdag" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:7 -#: templates/scheduling/event_calendar.html:81 -msgid "Sunday" -msgstr "zondag" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 -#: templates/scheduling/event_calendar.html:83 -msgid "Mon" -msgstr "ma" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 -#: templates/scheduling/event_calendar.html:83 -msgid "Tue" -msgstr "di" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 -#: templates/scheduling/event_calendar.html:83 -msgid "Wed" -msgstr "wo" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 -#: templates/scheduling/event_calendar.html:84 -msgid "Thu" -msgstr "do" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:10 -#: templates/scheduling/event_calendar.html:84 -msgid "Fri" -msgstr "vr" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:11 -#: templates/scheduling/event_calendar.html:84 -msgid "Sat" -msgstr "za" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:11 -#: templates/scheduling/event_calendar.html:83 -msgid "Sun" -msgstr "zo" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 -#: templates/scheduling/event_calendar.html:75 -msgid "January" -msgstr "januari" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 -#: templates/scheduling/event_calendar.html:75 -msgid "February" -msgstr "februari" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 -#: templates/scheduling/event_calendar.html:75 -msgid "March" -msgstr "maart" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 -#: templates/scheduling/event_calendar.html:75 -msgid "April" -msgstr "april" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 -#: templates/scheduling/event_calendar.html:76 -#: templates/scheduling/event_calendar.html:79 -msgid "May" -msgstr "mei" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:14 -#: templates/scheduling/event_calendar.html:76 -msgid "June" -msgstr "juni" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 -#: templates/scheduling/event_calendar.html:76 -msgid "July" -msgstr "juli" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 -#: templates/scheduling/event_calendar.html:76 -msgid "August" -msgstr "augustus" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 -#: templates/scheduling/event_calendar.html:77 -msgid "September" -msgstr "september" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 -#: templates/scheduling/event_calendar.html:77 -msgid "October" -msgstr "oktober" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:15 -#: templates/scheduling/event_calendar.html:77 -msgid "November" -msgstr "november" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:16 -#: templates/scheduling/event_calendar.html:77 -msgid "December" -msgstr "december" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:19 -#, fuzzy -#| msgid "and" -msgid "jan" -msgstr "en" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:19 -msgid "feb" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:19 -#, fuzzy -#| msgid "Summary" -msgid "mar" -msgstr "Samenvatting" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:19 -msgid "apr" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:19 -#, fuzzy -#| msgid "May" -msgid "may" -msgstr "mei" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:19 -#, fuzzy -#| msgid "Sun" -msgid "jun" -msgstr "zo" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:20 -msgid "jul" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:20 -msgid "aug" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:20 -msgid "sep" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:20 -#, fuzzy -#| msgid "product" -msgid "oct" -msgstr "product" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:20 -msgid "nov" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:20 -msgid "dec" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:23 -#, fuzzy -#| msgid "Jan." -msgctxt "abbrev. month" -msgid "Jan." -msgstr "jan" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:24 -#, fuzzy -#| msgid "Feb." -msgctxt "abbrev. month" -msgid "Feb." -msgstr "feb" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:25 -#, fuzzy -#| msgid "March" -msgctxt "abbrev. month" -msgid "March" -msgstr "maart" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:26 -#, fuzzy -#| msgid "April" -msgctxt "abbrev. month" -msgid "April" -msgstr "april" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:27 -#, fuzzy -#| msgid "May" -msgctxt "abbrev. month" -msgid "May" -msgstr "mei" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:28 -#, fuzzy -#| msgid "June" -msgctxt "abbrev. month" -msgid "June" -msgstr "juni" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:29 -#, fuzzy -#| msgid "July" -msgctxt "abbrev. month" -msgid "July" -msgstr "juli" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:30 -#, fuzzy -#| msgid "Aug." -msgctxt "abbrev. month" -msgid "Aug." -msgstr "aug" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:31 -msgctxt "abbrev. month" -msgid "Sept." -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:32 -#, fuzzy -#| msgid "Oct." -msgctxt "abbrev. month" -msgid "Oct." -msgstr "oct" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:33 -#, fuzzy -#| msgid "Nov." -msgctxt "abbrev. month" -msgid "Nov." -msgstr "nov" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:34 -#, fuzzy -#| msgid "Dec." -msgctxt "abbrev. month" -msgid "Dec." -msgstr "dec" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:37 -#, fuzzy -#| msgid "January" -msgctxt "alt. month" -msgid "January" -msgstr "januari" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:38 -#, fuzzy -#| msgid "February" -msgctxt "alt. month" -msgid "February" -msgstr "februari" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:39 -#, fuzzy -#| msgid "March" -msgctxt "alt. month" -msgid "March" -msgstr "maart" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:40 -#, fuzzy -#| msgid "April" -msgctxt "alt. month" -msgid "April" -msgstr "april" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:41 -#, fuzzy -#| msgid "May" -msgctxt "alt. month" -msgid "May" -msgstr "mei" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:42 -#, fuzzy -#| msgid "June" -msgctxt "alt. month" -msgid "June" -msgstr "juni" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:43 -#, fuzzy -#| msgid "July" -msgctxt "alt. month" -msgid "July" -msgstr "juli" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:44 -#, fuzzy -#| msgid "August" -msgctxt "alt. month" -msgid "August" -msgstr "augustus" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:45 -#, fuzzy -#| msgid "September" -msgctxt "alt. month" -msgid "September" -msgstr "september" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:46 -#, fuzzy -#| msgid "October" -msgctxt "alt. month" -msgid "October" -msgstr "oktober" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:47 -#, fuzzy -#| msgid "November" -msgctxt "alt. month" -msgid "November" -msgstr "november" - -#: env/lib/python3.9/site-packages/django/utils/dates.py:48 -#, fuzzy -#| msgid "December" -msgctxt "alt. month" -msgid "December" -msgstr "december" - -#: env/lib/python3.9/site-packages/django/utils/ipv6.py:8 -msgid "This is not a valid IPv6 address." -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/text.py:67 -#, python-format -msgctxt "String to return when truncating text" -msgid "%(truncated_text)sā€¦" -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/text.py:233 -msgid "or" -msgstr "" - -#. Translators: This string is used as a separator between list elements -#: env/lib/python3.9/site-packages/django/utils/text.py:252 -#: env/lib/python3.9/site-packages/django/utils/timesince.py:83 -msgid ", " -msgstr "" - -#: env/lib/python3.9/site-packages/django/utils/timesince.py:9 -#, python-format -msgid "%d year" -msgid_plural "%d years" -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/utils/timesince.py:10 -#, fuzzy, python-format -#| msgid "month" -msgid "%d month" -msgid_plural "%d months" -msgstr[0] "maand" -msgstr[1] "maand" - -#: env/lib/python3.9/site-packages/django/utils/timesince.py:11 -#, fuzzy, python-format -#| msgid "week" -msgid "%d week" -msgid_plural "%d weeks" -msgstr[0] "week" -msgstr[1] "week" - -#: env/lib/python3.9/site-packages/django/utils/timesince.py:12 -#, python-format -msgid "%d day" -msgid_plural "%d days" -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/utils/timesince.py:13 -#, python-format -msgid "%d hour" -msgid_plural "%d hours" -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/utils/timesince.py:14 -#, python-format -msgid "%d minute" -msgid_plural "%d minutes" -msgstr[0] "" -msgstr[1] "" - -#: env/lib/python3.9/site-packages/django/utils/timesince.py:72 -msgid "0 minutes" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:110 -msgid "Forbidden" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:111 -msgid "CSRF verification failed. Request aborted." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:115 -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 " -"required for security reasons, to ensure that your browser is not being " -"hijacked by third parties." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:120 -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-" -"origin' requests." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:124 -msgid "" -"If you are using the tag or " -"including the 'Referrer-Policy: no-referrer' header, please remove them. The " -"CSRF protection requires the 'Referer' header to do strict referer checking. " -"If you're concerned about privacy, use alternatives like for links to third-party sites." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:132 -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 " -"that your browser is not being hijacked by third parties." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:137 -msgid "" -"If you have configured your browser to disable cookies, please re-enable " -"them, at least for this site, or for 'same-origin' requests." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/csrf.py:142 -msgid "More information is available with DEBUG=True." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:41 -msgid "No year specified" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:61 -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:111 -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:208 -msgid "Date out of range" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:90 -msgid "No month specified" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:142 -msgid "No day specified" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:188 -msgid "No week specified" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:338 -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:367 -#, python-format -msgid "No %(verbose_name_plural)s available" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:589 -#, python-format -msgid "" -"Future %(verbose_name_plural)s not available because %(class_name)s." -"allow_future is False." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/dates.py:623 -#, python-format -msgid "Invalid date string '%(datestr)s' given format '%(format)s'" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/detail.py:54 -#, python-format -msgid "No %(verbose_name)s found matching the query" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/list.py:67 -msgid "Page is not 'last', nor can it be converted to an int." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/list.py:72 -#, python-format -msgid "Invalid page (%(page_number)s): %(message)s" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/generic/list.py:154 -#, python-format -msgid "Empty list and '%(class_name)s.allow_empty' is False." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/static.py:40 -msgid "Directory indexes are not allowed here." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/static.py:42 -#, python-format -msgid "\"%(path)s\" does not exist" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/static.py:80 -#, python-format -msgid "Index of %(directory)s" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:6 -msgid "Django: the Web framework for perfectionists with deadlines." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:345 -#, python-format -msgid "" -"View release notes for Django %(version)s" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:367 -msgid "The install worked successfully! Congratulations!" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:368 -#, python-format -msgid "" -"You are seeing this page because DEBUG=True is in your settings file and you have not " -"configured any URLs." -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:383 -msgid "Django Documentation" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:384 -msgid "Topics, references, & how-to's" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:395 -msgid "Tutorial: A Polling App" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:396 -msgid "Get started with Django" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:407 -msgid "Django Community" -msgstr "" - -#: env/lib/python3.9/site-packages/django/views/templates/default_urlconf.html:408 -msgid "Connect, get help, or contribute" -msgstr "" - -#: env/lib/python3.9/site-packages/jsonfield/fields.py:42 -#: env/lib/python3.9/site-packages/jsonfield/forms.py:22 -#, fuzzy -#| msgid "Enter a valid username" -msgid "Enter valid JSON." -msgstr "Voer een geldige gebruikersnaam in" - -#: env/lib/python3.9/site-packages/jsonfield/forms.py:15 -#, python-format -msgid "\"%(value)s\" value must be valid JSON." -msgstr "" - -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:3 -msgid "You're lazy..." -msgstr "" - -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:61 -msgid "Parse error." -msgstr "" - -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:67 -msgid "Invalid Request." -msgstr "" - -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:74 -#, fuzzy -#| msgid "Not found" -msgid "Method not found." -msgstr "Niet gevonden" - -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:81 -msgid "Invalid params." -msgstr "" - -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:87 -msgid "Internal error." -msgstr "" +msgstr "Engels" -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:96 -msgid "JSON-RPC requests must be POST" -msgstr "" +#: alexia/core/validators.py:6 +msgid "Enter a valid hexadecimal color" +msgstr "Voer een geldige hexadecimale kleur in" -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:102 -msgid "Invalid login credentials" -msgstr "" +#: alexia/core/validators.py:17 +msgid "Enter a valid username" +msgstr "Voer een geldige gebruikersnaam in" -#: env/lib/python3.9/site-packages/jsonrpc/exceptions.py:109 -msgid "Error missed by other exceptions" -msgstr "" +#: alexia/forms/mixins.py:22 templates/consumption/dcf.html:34 templates/registration/register.html:17 +msgid "Save" +msgstr "Opslaan" #: templates/403.html:3 templates/403.html:7 msgid "Access denied" @@ -2306,6 +860,10 @@ msgstr "Maak gebruiker" msgid "Event management system Alexia" msgstr "Borrelbeheersysteem Alexia" +#: templates/base.html:32 templates/general/about.html:23 templates/general/about.html:34 +msgid "and" +msgstr "en" + #: templates/base.html:33 msgid "individual contributors" msgstr "individuele bijdragers" @@ -2314,9 +872,7 @@ msgstr "individuele bijdragers" msgid "Local login" msgstr "Lokale login" -#: templates/base_app.html:21 templates/scheduling/event_calendar.html:3 -#: templates/scheduling/event_list.html:3 -#: templates/scheduling/event_list.html:8 +#: templates/base_app.html:21 templates/scheduling/event_calendar.html:3 templates/scheduling/event_list.html:3 templates/scheduling/event_list.html:8 msgid "Planning" msgstr "Planning" @@ -2332,8 +888,7 @@ msgstr "Kalender" msgid "Personal schedule" msgstr "Tappersrooster" -#: templates/base_app.html:31 templates/scheduling/event_matrix.html:3 -#: templates/scheduling/event_matrix.html:8 +#: templates/base_app.html:31 templates/scheduling/event_matrix.html:3 templates/scheduling/event_matrix.html:8 msgid "Availability matrix" msgstr "Beschikbaarheidsmatrix" @@ -2349,32 +904,23 @@ msgstr "Mailsjabonen" msgid "Users" msgstr "Gebruikers" -#: templates/base_app.html:52 templates/billing/productgroup_list.html:3 -#: templates/billing/productgroup_list.html:8 +#: templates/base_app.html:52 templates/billing/productgroup_list.html:3 templates/billing/productgroup_list.html:8 msgid "Product groups" msgstr "Productgroepen" -#: templates/base_app.html:53 templates/billing/pricegroup_list.html:3 -#: templates/billing/pricegroup_list.html:8 +#: templates/base_app.html:53 templates/billing/pricegroup_list.html:3 templates/billing/pricegroup_list.html:8 msgid "Price groups" msgstr "Prijsgroepen" -#: templates/base_app.html:54 templates/billing/permanentproduct_list.html:3 -#: templates/billing/permanentproduct_list.html:8 -#: templates/billing/productgroup_detail.html:24 +#: templates/base_app.html:54 templates/billing/permanentproduct_list.html:3 templates/billing/permanentproduct_list.html:8 templates/billing/productgroup_detail.html:24 msgid "Products" msgstr "Producten" -#: templates/base_app.html:55 templates/billing/sellingprice_list.html:3 -#: templates/billing/sellingprice_list.html:7 +#: templates/base_app.html:55 templates/billing/sellingprice_list.html:3 templates/billing/sellingprice_list.html:7 msgid "Price matrix" msgstr "Prijsmatrix" -#: templates/base_app.html:57 templates/billing/order_detail.html:3 -#: templates/billing/order_detail.html:8 templates/billing/order_detail.html:60 -#: templates/billing/order_detail.html:130 -#: templates/consumption/consumptionform_detail.html:17 -#: templates/scheduling/event_detail.html:23 +#: templates/base_app.html:57 templates/billing/order_detail.html:3 templates/billing/order_detail.html:8 templates/billing/order_detail.html:60 templates/billing/order_detail.html:133 templates/consumption/consumptionform_detail.html:17 templates/scheduling/event_detail.html:23 msgid "Orders" msgstr "Transacties" @@ -2382,14 +928,11 @@ msgstr "Transacties" msgid "Management" msgstr "Beheer" -#: templates/base_app.html:73 -#: templates/consumption/consumptionproduct_list.html:3 -#: templates/consumption/consumptionproduct_list.html:8 +#: templates/base_app.html:73 templates/consumption/consumptionproduct_list.html:3 templates/consumption/consumptionproduct_list.html:8 msgid "Consumption products" msgstr "Voorraadproducten" -#: templates/base_app.html:74 templates/consumption/consumptionform_list.html:3 -#: templates/consumption/consumptionform_list.html:8 +#: templates/base_app.html:74 templates/consumption/consumptionform_list.html:3 templates/consumption/consumptionform_list.html:8 msgid "Consumption forms" msgstr "Verbruiksformulieren" @@ -2413,74 +956,27 @@ msgstr "Uitloggen" msgid "Login with UTwente" msgstr "Inloggen met UTwente" -#: templates/billing/order_detail.html:13 templates/consumption/dcf.html:4 -#: templates/consumption/dcf_check.html:3 -#: templates/consumption/dcf_finished.html:3 -#: templates/consumption/pdf/page.html:6 -#: templates/scheduling/event_detail.html:14 +#: templates/billing/order_detail.html:13 templates/consumption/dcf.html:4 templates/consumption/dcf_check.html:3 templates/consumption/dcf_finished.html:3 templates/consumption/pdf/page.html:6 templates/scheduling/event_detail.html:14 msgid "Consumption form" msgstr "Verbruiksformulier" -#: templates/billing/order_detail.html:18 -#: templates/consumption/consumptionform_detail.html:23 +#: templates/billing/order_detail.html:18 templates/consumption/consumptionform_detail.html:23 msgid "Event information" msgstr "Evenementinformatie" -#: templates/billing/order_detail.html:25 templates/billing/order_month.html:16 -#: templates/billing/payment_detail.html:22 -#: templates/billing/temporaryproduct_detail.html:31 -#: templates/consumption/consumptionform_list.html:33 -#: templates/consumption/consumptionform_list.html:70 -#: templates/consumption/pdf/page.html:19 -#: templates/organization/membership_detail.html:67 -#: templates/profile/expenditure_list.html:16 templates/profile/profile.html:69 -#: templates/scheduling/event_bartender_availability_form.html:12 +#: templates/billing/order_detail.html:25 templates/billing/order_month.html:16 templates/billing/payment_detail.html:22 templates/billing/temporaryproduct_detail.html:31 templates/billing/writeoff_order_detail.html:25 templates/consumption/consumptionform_list.html:33 templates/consumption/consumptionform_list.html:70 templates/consumption/pdf/page.html:19 templates/organization/membership_detail.html:67 templates/profile/expenditure_list.html:16 templates/profile/profile.html:69 templates/scheduling/event_bartender_availability_form.html:12 msgid "Event" msgstr "Activiteit" -#: templates/billing/order_detail.html:28 -#: templates/billing/order_export_result.html:35 -#: templates/billing/order_list.html:47 -#: templates/billing/permanentproduct_detail.html:27 -#: templates/billing/permanentproduct_list.html:21 -#: templates/billing/pricegroup_detail.html:27 -#: templates/billing/pricegroup_list.html:20 -#: templates/billing/productgroup_list.html:20 -#: templates/billing/temporaryproduct_detail.html:27 -#: templates/consumption/consumptionproduct_list.html:25 -#: templates/consumption/consumptionproduct_list.html:65 -#: templates/organization/membership_detail.html:45 -#: templates/organization/membership_iva.html:15 -#: templates/organization/membership_list.html:26 -#: templates/scheduling/availability_list.html:20 -#: templates/scheduling/event_bartender.html:16 -#: templates/scheduling/event_detail.html:79 -#: templates/scheduling/event_list.html:39 -#: templates/scheduling/mailtemplate_detail.html:20 -#: templates/scheduling/mailtemplate_list.html:15 +#: templates/billing/order_detail.html:28 templates/billing/order_export_result.html:35 templates/billing/order_list.html:47 templates/billing/permanentproduct_detail.html:27 templates/billing/permanentproduct_list.html:21 templates/billing/pricegroup_detail.html:27 templates/billing/pricegroup_list.html:20 templates/billing/productgroup_list.html:20 templates/billing/temporaryproduct_detail.html:27 templates/consumption/consumptionproduct_list.html:25 templates/consumption/consumptionproduct_list.html:65 templates/organization/membership_detail.html:45 templates/organization/membership_iva.html:15 templates/organization/membership_list.html:26 templates/scheduling/availability_list.html:20 templates/scheduling/event_bartender.html:16 templates/scheduling/event_detail.html:79 templates/scheduling/event_list.html:39 templates/scheduling/mailtemplate_detail.html:20 templates/scheduling/mailtemplate_list.html:15 msgid "Name" msgstr "Naam" -#: templates/billing/order_detail.html:32 -#: templates/billing/order_export_result.html:34 -#: templates/billing/order_list.html:46 templates/billing/order_month.html:15 -#: templates/consumption/consumptionform_detail.html:43 -#: templates/consumption/consumptionform_list.html:30 -#: templates/consumption/consumptionform_list.html:67 -#: templates/consumption/dcf_check.html:30 -#: templates/consumption/pdf/page.html:15 -#: templates/organization/membership_detail.html:66 -#: templates/profile/expenditure_list.html:15 -#: templates/scheduling/event_bartender.html:13 -#: templates/scheduling/event_list.html:35 +#: templates/billing/order_detail.html:32 templates/billing/order_export_result.html:34 templates/billing/order_list.html:46 templates/billing/order_month.html:15 templates/consumption/consumptionform_detail.html:43 templates/consumption/consumptionform_list.html:30 templates/consumption/consumptionform_list.html:67 templates/consumption/dcf_check.html:30 templates/consumption/pdf/page.html:15 templates/organization/membership_detail.html:66 templates/profile/expenditure_list.html:15 templates/scheduling/event_bartender.html:13 templates/scheduling/event_list.html:35 msgid "Date" msgstr "Datum" -#: templates/billing/order_detail.html:36 -#: templates/consumption/consumptionform_detail.html:51 -#: templates/consumption/dcf_check.html:38 -#: templates/scheduling/event_detail.html:48 -#: templates/scheduling/event_form.html:23 +#: templates/billing/order_detail.html:36 templates/consumption/consumptionform_detail.html:51 templates/consumption/dcf_check.html:38 templates/scheduling/event_detail.html:48 templates/scheduling/event_form.html:23 msgid "Organizer" msgstr "Organisator" @@ -2488,17 +984,11 @@ msgstr "Organisator" msgid "Visitors" msgstr "Bezoekers" -#: templates/billing/order_detail.html:47 templates/billing/order_list.html:49 -#: templates/profile/profile.html:29 +#: templates/billing/order_detail.html:47 templates/billing/order_list.html:49 templates/profile/profile.html:29 msgid "Transactions" msgstr "Transacties" -#: templates/billing/order_detail.html:51 -#: templates/billing/order_detail.html:75 -#: templates/billing/order_export_result.html:18 -#: templates/billing/order_export_result.html:36 -#: templates/billing/order_list.html:27 templates/billing/order_list.html:50 -#: templates/billing/order_month.html:17 templates/billing/order_year.html:16 +#: templates/billing/order_detail.html:51 templates/billing/order_detail.html:75 templates/billing/order_export_result.html:18 templates/billing/order_export_result.html:36 templates/billing/order_list.html:27 templates/billing/order_list.html:50 templates/billing/order_month.html:17 templates/billing/order_year.html:16 msgid "Revenue" msgstr "Omzet" @@ -2506,56 +996,49 @@ msgstr "Omzet" msgid "Sales" msgstr "Verkopen" -#: templates/billing/order_detail.html:64 -#: templates/billing/order_detail.html:95 +#: templates/billing/order_detail.html:64 templates/billing/order_detail.html:95 msgid "Written off" msgstr "Afgeschreven" -#: templates/billing/order_detail.html:74 -#: templates/billing/order_detail.html:94 -#: templates/billing/payment_detail.html:40 -#: templates/billing/permanentproduct_detail.html:8 -#: templates/consumption/partials/unit_consumption.html:13 -#: templates/consumption/partials/weight_consumption.html:13 +#: templates/billing/order_detail.html:74 templates/billing/order_detail.html:94 templates/billing/payment_detail.html:40 templates/billing/permanentproduct_detail.html:8 templates/billing/writeoff_order_detail.html:43 templates/consumption/partials/unit_consumption.html:13 templates/consumption/partials/weight_consumption.html:13 msgid "Product" msgstr "Product" -#: templates/billing/order_detail.html:135 +#: templates/billing/order_detail.html:138 templates/billing/order_detail.html:169 msgid "ID" msgstr "ID" -#: templates/billing/order_detail.html:136 -#: templates/billing/payment_detail.html:14 +#: templates/billing/order_detail.html:139 templates/billing/payment_detail.html:14 msgid "Debtor" msgstr "Debiteur" -#: templates/billing/order_detail.html:137 -#: templates/billing/payment_detail.html:26 -#: templates/profile/expenditure_detail.html:14 +#: templates/billing/order_detail.html:140 templates/billing/order_detail.html:170 templates/billing/payment_detail.html:26 templates/billing/writeoff_order_detail.html:29 templates/profile/expenditure_detail.html:14 msgid "Amount" msgstr "Bedrag" -#: templates/billing/order_detail.html:138 -#: templates/billing/payment_detail.html:18 -#: templates/profile/expenditure_detail.html:13 +#: templates/billing/order_detail.html:141 templates/billing/order_detail.html:172 templates/billing/payment_detail.html:18 templates/billing/writeoff_order_detail.html:21 templates/profile/expenditure_detail.html:13 msgid "Timestamp" msgstr "Tijdstempel" -#: templates/billing/order_detail.html:139 +#: templates/billing/order_detail.html:142 msgid "Synchronized" msgstr "Gesynchroniseerd" -#: templates/billing/order_export_form.html:3 -#: templates/billing/order_export_form.html:7 +#: templates/billing/order_detail.html:164 +#| msgid "writeoff orders" +msgid "Written off orders" +msgstr "Afgeschreven orders" + +#: templates/billing/order_detail.html:171 templates/billing/writeoff_order_detail.html:14 +msgid "Category" +msgstr "Categorie" + +#: templates/billing/order_export_form.html:3 templates/billing/order_export_form.html:7 #, python-format msgid "Export transactions of %(organization)s" msgstr "Exporteer transacties van %(organization)s" -#: templates/billing/order_export_result.html:3 -#: templates/billing/order_export_result.html:11 -#: templates/billing/order_list.html:3 templates/billing/order_list.html:8 -#: templates/billing/order_month.html:3 templates/billing/order_month.html:8 -#: templates/billing/order_year.html:3 templates/billing/order_year.html:8 +#: templates/billing/order_export_result.html:3 templates/billing/order_export_result.html:11 templates/billing/order_list.html:3 templates/billing/order_list.html:8 templates/billing/order_month.html:3 templates/billing/order_month.html:8 templates/billing/order_year.html:3 templates/billing/order_year.html:8 #, python-format msgid "Transactions of %(organization)s" msgstr "Transacties van %(organization)s" @@ -2568,8 +1051,7 @@ msgstr "Samenvatting" msgid "Specification" msgstr "Specificatie" -#: templates/billing/order_list.html:20 templates/general/about.html:39 -#: templates/profile/profile.html:25 +#: templates/billing/order_list.html:20 templates/general/about.html:39 templates/profile/profile.html:25 msgid "Stats" msgstr "Statistieken" @@ -2577,13 +1059,7 @@ msgstr "Statistieken" msgid "The amount of unique debtors this event" msgstr "Het aantal unieke debiteuren deze activiteit" -#: templates/billing/order_list.html:51 templates/billing/order_month.html:18 -#: templates/billing/pricegroup_confirm_delete.html:3 -#: templates/billing/pricegroup_detail.html:3 -#: templates/billing/pricegroup_detail.html:8 -#: templates/billing/productgroup_detail.html:29 -#: templates/billing/productgroup_detail.html:71 -#: templates/billing/sellingprice_list.html:14 +#: templates/billing/order_list.html:51 templates/billing/order_month.html:18 templates/billing/pricegroup_confirm_delete.html:3 templates/billing/pricegroup_detail.html:3 templates/billing/pricegroup_detail.html:8 templates/billing/productgroup_detail.html:29 templates/billing/productgroup_detail.html:71 templates/billing/sellingprice_list.html:14 msgid "Price group" msgstr "Prijsgroep" @@ -2592,37 +1068,27 @@ msgstr "Prijsgroep" msgid "%(organization)s hasn't used Alexia Billing yet!" msgstr "%(organization)s heeft Alexia Financieel nog niet in gebruik!" -#: templates/billing/payment_detail.html:3 -#: templates/billing/payment_detail.html:7 +#: templates/billing/payment_detail.html:3 templates/billing/payment_detail.html:7 msgid "Payment" msgstr "Betaling" -#: templates/billing/payment_detail.html:11 -#: templates/billing/pricegroup_detail.html:24 -#: templates/consumption/consumptionform_detail.html:40 -#: templates/scheduling/event_detail.html:38 +#: templates/billing/payment_detail.html:11 templates/billing/pricegroup_detail.html:24 templates/billing/writeoff_order_detail.html:11 templates/consumption/consumptionform_detail.html:40 templates/scheduling/event_detail.html:38 msgid "Details" msgstr "Details" -#: templates/billing/payment_detail.html:30 -#: templates/profile/expenditure_detail.html:15 +#: templates/billing/payment_detail.html:30 templates/billing/writeoff_order_detail.html:33 templates/profile/expenditure_detail.html:15 msgid "Handled by" msgstr "Afgehandeld door" -#: templates/billing/payment_detail.html:36 +#: templates/billing/payment_detail.html:36 templates/billing/writeoff_order_detail.html:39 msgid "Items" msgstr "Specificatie" -#: templates/billing/payment_detail.html:41 -#: templates/billing/pricegroup_detail.html:43 -#: templates/billing/productgroup_detail.html:72 -#: templates/billing/temporaryproduct_detail.html:35 -#: templates/scheduling/event_detail.html:80 +#: templates/billing/payment_detail.html:41 templates/billing/pricegroup_detail.html:43 templates/billing/productgroup_detail.html:72 templates/billing/temporaryproduct_detail.html:35 templates/billing/writeoff_order_detail.html:44 templates/scheduling/event_detail.html:80 msgid "Price" msgstr "Prijs" -#: templates/billing/permanentproduct_confirm_delete.html:3 -#: templates/billing/permanentproduct_confirm_delete.html:7 +#: templates/billing/permanentproduct_confirm_delete.html:3 templates/billing/permanentproduct_confirm_delete.html:7 msgid "Delete product" msgstr "Product verwijderen" @@ -2631,57 +1097,31 @@ msgstr "Product verwijderen" msgid "Are you sure you want to delete %(product)s from %(productgroup)s?" msgstr "Weet je zeker dat je %(product)s wil verwijderen van %(productgroup)s?" -#: templates/billing/permanentproduct_detail.html:13 -#: templates/billing/permanentproduct_list.html:40 -#: templates/billing/pricegroup_detail.html:13 -#: templates/billing/pricegroup_detail.html:55 -#: templates/billing/pricegroup_list.html:31 -#: templates/billing/productgroup_detail.html:13 -#: templates/billing/productgroup_detail.html:40 -#: templates/billing/productgroup_detail.html:84 -#: templates/billing/productgroup_list.html:31 -#: templates/billing/temporaryproduct_detail.html:13 -#: templates/consumption/consumptionform_detail.html:28 -#: templates/consumption/consumptionproduct_list.html:47 -#: templates/consumption/consumptionproduct_list.html:87 -#: templates/organization/membership_list.html:85 -#: templates/scheduling/availability_list.html:35 -#: templates/scheduling/event_detail.html:29 -#: templates/scheduling/event_detail.html:99 -#: templates/scheduling/mailtemplate_detail.html:13 -#: templates/scheduling/mailtemplate_list.html:30 +#: templates/billing/permanentproduct_confirm_delete.html:20 templates/billing/permanentproduct_detail.html:17 templates/billing/permanentproduct_list.html:44 templates/billing/pricegroup_confirm_delete.html:21 templates/billing/pricegroup_detail.html:17 templates/billing/pricegroup_detail.html:59 templates/billing/pricegroup_list.html:35 templates/billing/productgroup_confirm_delete.html:19 templates/billing/productgroup_detail.html:17 templates/billing/productgroup_detail.html:44 templates/billing/productgroup_detail.html:88 templates/billing/productgroup_list.html:35 templates/billing/sellingprice_confirm_delete.html:17 templates/billing/temporaryproduct_confirm_delete.html:14 templates/billing/temporaryproduct_detail.html:17 templates/consumption/partials/unit_consumption.html:15 templates/consumption/partials/weight_consumption.html:19 templates/organization/membership_confirm_delete.html:20 templates/organization/membership_list.html:89 templates/scheduling/event_detail.html:103 +msgid "Delete" +msgstr "Verwijderen" + +#: templates/billing/permanentproduct_detail.html:13 templates/billing/permanentproduct_list.html:40 templates/billing/pricegroup_detail.html:13 templates/billing/pricegroup_detail.html:55 templates/billing/pricegroup_list.html:31 templates/billing/productgroup_detail.html:13 templates/billing/productgroup_detail.html:40 templates/billing/productgroup_detail.html:84 templates/billing/productgroup_list.html:31 templates/billing/temporaryproduct_detail.html:13 templates/consumption/consumptionform_detail.html:28 templates/consumption/consumptionproduct_list.html:47 templates/consumption/consumptionproduct_list.html:87 templates/organization/membership_list.html:85 templates/scheduling/availability_list.html:35 templates/scheduling/event_detail.html:29 templates/scheduling/event_detail.html:99 templates/scheduling/mailtemplate_detail.html:13 templates/scheduling/mailtemplate_list.html:30 msgid "Modify" msgstr "Wijzigen" -#: templates/billing/permanentproduct_detail.html:24 -#: templates/billing/temporaryproduct_detail.html:24 +#: templates/billing/permanentproduct_detail.html:24 templates/billing/temporaryproduct_detail.html:24 msgid "Product information" msgstr "Productinformatie" -#: templates/billing/permanentproduct_detail.html:35 -#: templates/billing/permanentproduct_list.html:22 -#: templates/billing/pricegroup_detail.html:42 -#: templates/billing/productgroup_confirm_delete.html:3 -#: templates/billing/productgroup_confirm_delete.html:8 -#: templates/billing/productgroup_detail.html:3 -#: templates/billing/productgroup_detail.html:8 -#: templates/billing/sellingprice_list.html:13 +#: templates/billing/permanentproduct_detail.html:35 templates/billing/permanentproduct_list.html:22 templates/billing/pricegroup_detail.html:42 templates/billing/productgroup_confirm_delete.html:3 templates/billing/productgroup_confirm_delete.html:8 templates/billing/productgroup_detail.html:3 templates/billing/productgroup_detail.html:8 templates/billing/sellingprice_list.html:13 msgid "Product group" msgstr "Productgroep" -#: templates/billing/permanentproduct_detail.html:41 -#: templates/billing/temporaryproduct_detail.html:41 +#: templates/billing/permanentproduct_detail.html:41 templates/billing/temporaryproduct_detail.html:41 msgid "Juliana settings" msgstr "Juliana-instellingen" -#: templates/billing/permanentproduct_detail.html:44 -#: templates/billing/permanentproduct_list.html:23 -#: templates/scheduling/availability_list.html:22 +#: templates/billing/permanentproduct_detail.html:44 templates/billing/permanentproduct_list.html:23 templates/scheduling/availability_list.html:22 msgid "Position" msgstr "Positie" -#: templates/billing/permanentproduct_detail.html:56 -#: templates/billing/temporaryproduct_detail.html:52 +#: templates/billing/permanentproduct_detail.html:56 templates/billing/temporaryproduct_detail.html:52 msgid "Color example" msgstr "Kleurvoorbeeld" @@ -2689,43 +1129,23 @@ msgstr "Kleurvoorbeeld" msgid "Shortcut" msgstr "Shortcut" -#: templates/billing/permanentproduct_form.html:5 -#: templates/billing/permanentproduct_form.html:15 +#: templates/billing/permanentproduct_form.html:5 templates/billing/permanentproduct_form.html:15 msgid "Edit product" msgstr "Wijzig product" -#: templates/billing/permanentproduct_form.html:7 -#: templates/billing/permanentproduct_form.html:17 +#: templates/billing/permanentproduct_form.html:7 templates/billing/permanentproduct_form.html:17 msgid "New product" msgstr "Nieuw product" -#: templates/billing/permanentproduct_list.html:12 -#: templates/billing/pricegroup_detail.html:72 -#: templates/billing/pricegroup_list.html:12 -#: templates/billing/productgroup_detail.html:57 -#: templates/billing/productgroup_detail.html:101 -#: templates/billing/productgroup_list.html:12 -#: templates/scheduling/availability_list.html:12 -#: templates/scheduling/event_detail.html:118 +#: templates/billing/permanentproduct_list.html:12 templates/billing/pricegroup_detail.html:72 templates/billing/pricegroup_list.html:12 templates/billing/productgroup_detail.html:57 templates/billing/productgroup_detail.html:101 templates/billing/productgroup_list.html:12 templates/scheduling/availability_list.html:12 templates/scheduling/event_detail.html:118 msgid "Add" msgstr "Toevoegen" -#: templates/billing/permanentproduct_list.html:24 -#: templates/billing/pricegroup_detail.html:44 -#: templates/billing/pricegroup_list.html:21 -#: templates/billing/productgroup_detail.html:30 -#: templates/billing/productgroup_detail.html:73 -#: templates/billing/productgroup_list.html:21 -#: templates/consumption/consumptionproduct_list.html:27 -#: templates/consumption/consumptionproduct_list.html:67 -#: templates/scheduling/availability_list.html:23 -#: templates/scheduling/event_detail.html:82 -#: templates/scheduling/mailtemplate_list.html:18 +#: templates/billing/permanentproduct_list.html:24 templates/billing/pricegroup_detail.html:44 templates/billing/pricegroup_list.html:21 templates/billing/productgroup_detail.html:30 templates/billing/productgroup_detail.html:73 templates/billing/productgroup_list.html:21 templates/consumption/consumptionproduct_list.html:27 templates/consumption/consumptionproduct_list.html:67 templates/scheduling/availability_list.html:23 templates/scheduling/event_detail.html:82 templates/scheduling/mailtemplate_list.html:18 msgid "Actions" msgstr "Acties" -#: templates/billing/permanentproduct_list.html:50 -#: templates/billing/productgroup_detail.html:50 +#: templates/billing/permanentproduct_list.html:50 templates/billing/productgroup_detail.html:50 msgid "No products defined." msgstr "Geen producten gedefinieerd." @@ -2734,29 +1154,22 @@ msgid "Delete price group" msgstr "Verwijder prijsgroep" #: templates/billing/pricegroup_confirm_delete.html:13 -msgid "" -"Are you sure you want to delete this price group? The following prices will " -"also be deleted:" -msgstr "" -"Weet je zeker dat je deze prijsgroep wil verwijderen? De volgende prijzen " -"worden ook verwijderd:" +msgid "Are you sure you want to delete this price group? The following prices will also be deleted:" +msgstr "Weet je zeker dat je deze prijsgroep wil verwijderen? De volgende prijzen worden ook verwijderd:" #: templates/billing/pricegroup_confirm_delete.html:17 msgid "Events with this price group need a new pricegroup. Please choose one." msgstr "Activiteiten met deze prijsgroep moeten een nieuwe prijsgroep krijgen." -#: templates/billing/pricegroup_detail.html:37 -#: templates/billing/productgroup_detail.html:66 +#: templates/billing/pricegroup_detail.html:37 templates/billing/productgroup_detail.html:66 msgid "Prices" msgstr "Prijzen" -#: templates/billing/pricegroup_detail.html:65 -#: templates/billing/productgroup_detail.html:94 +#: templates/billing/pricegroup_detail.html:65 templates/billing/productgroup_detail.html:94 msgid "No prices defined." msgstr "Geen prijzen gedefinieerd." -#: templates/billing/pricegroup_form.html:5 -#: templates/billing/pricegroup_form.html:15 +#: templates/billing/pricegroup_form.html:5 templates/billing/pricegroup_form.html:15 msgid "Edit price group" msgstr "Wijzig prijsgroep" @@ -2765,20 +1178,14 @@ msgid "No price groups defined." msgstr "Geen prijsgroepen gedefinieerd." #: templates/billing/productgroup_confirm_delete.html:14 -msgid "" -"Are you sure you want to delete this product group? The following products " -"will also be deleted:" -msgstr "" -"Weet je zeker dat je deze productgroep wil verwijderen? De volgende " -"producten worden ook verwijderd:" +msgid "Are you sure you want to delete this product group? The following products will also be deleted:" +msgstr "Weet je zeker dat je deze productgroep wil verwijderen? De volgende producten worden ook verwijderd:" -#: templates/billing/productgroup_form.html:5 -#: templates/billing/productgroup_form.html:15 +#: templates/billing/productgroup_form.html:5 templates/billing/productgroup_form.html:15 msgid "Edit product group" msgstr "Wijzig productgroep" -#: templates/billing/productgroup_form.html:7 -#: templates/billing/productgroup_form.html:17 +#: templates/billing/productgroup_form.html:7 templates/billing/productgroup_form.html:17 msgid "New product group" msgstr "Nieuwe productgroep" @@ -2786,8 +1193,7 @@ msgstr "Nieuwe productgroep" msgid "No product groups defined." msgstr "Geen productgroepen gedefinieerd." -#: templates/billing/sellingprice_confirm_delete.html:3 -#: templates/billing/sellingprice_confirm_delete.html:7 +#: templates/billing/sellingprice_confirm_delete.html:3 templates/billing/sellingprice_confirm_delete.html:7 msgid "Delete selling price" msgstr "Verwijder verkoopprijs" @@ -2796,18 +1202,15 @@ msgstr "Verwijder verkoopprijs" msgid "Are you sure you want to delete %(price)s?" msgstr "Weet je zeker dat je %(price)s wil verwijderen?" -#: templates/billing/sellingprice_form.html:5 -#: templates/billing/sellingprice_form.html:15 +#: templates/billing/sellingprice_form.html:5 templates/billing/sellingprice_form.html:15 msgid "Edit selling price" msgstr "Wijzig verkoopprijs" -#: templates/billing/sellingprice_form.html:7 -#: templates/billing/sellingprice_form.html:17 +#: templates/billing/sellingprice_form.html:7 templates/billing/sellingprice_form.html:17 msgid "New selling price" msgstr "Nieuwe verkoopprijs" -#: templates/billing/temporaryproduct_confirm_delete.html:3 -#: templates/billing/temporaryproduct_confirm_delete.html:7 +#: templates/billing/temporaryproduct_confirm_delete.html:3 templates/billing/temporaryproduct_confirm_delete.html:7 msgid "Delete temporary product" msgstr "Verwijder tijdelijk product" @@ -2820,77 +1223,60 @@ msgstr "Weet je zeker dat je %(product)s wil verwijderen van %(event)s?" msgid "Temporary product" msgstr "Tijdelijk product" -#: templates/billing/temporaryproduct_form.html:5 -#: templates/billing/temporaryproduct_form.html:15 +#: templates/billing/temporaryproduct_form.html:5 templates/billing/temporaryproduct_form.html:15 msgid "Edit temporary product" msgstr "Wijzig tijdelijk product" -#: templates/billing/temporaryproduct_form.html:7 -#: templates/billing/temporaryproduct_form.html:17 +#: templates/billing/temporaryproduct_form.html:7 templates/billing/temporaryproduct_form.html:17 msgid "New temporary product" msgstr "Nieuw tijdelijk product" -#: templates/consumption/consumptionform_detail.html:33 -#: templates/consumption/consumptionform_list.html:104 +#: templates/billing/writeoff_order_detail.html:3 templates/billing/writeoff_order_detail.html:7 +#| msgid "Written off" +msgid "Write off" +msgstr "Afschrijven" + +#: templates/consumption/consumptionform_detail.html:33 templates/consumption/consumptionform_list.html:104 msgid "PDF" msgstr "PDF" -#: templates/consumption/consumptionform_detail.html:47 -#: templates/consumption/consumptionform_list.html:32 -#: templates/consumption/consumptionform_list.html:69 -#: templates/consumption/dcf_check.html:34 -#: templates/consumption/pdf/page.html:11 -#: templates/scheduling/event_bartender.html:15 -#: templates/scheduling/event_calendar.html:25 -#: templates/scheduling/event_detail.html:56 -#: templates/scheduling/event_list.html:38 +#: templates/consumption/consumptionform_detail.html:47 templates/consumption/consumptionform_list.html:32 templates/consumption/consumptionform_list.html:69 templates/consumption/dcf_check.html:34 templates/consumption/pdf/page.html:11 templates/scheduling/event_bartender.html:15 templates/scheduling/event_calendar.html:25 templates/scheduling/event_detail.html:56 templates/scheduling/event_list.html:38 msgid "Location" msgstr "Locatie" -#: templates/consumption/consumptionform_detail.html:55 -#: templates/consumption/consumptionform_list.html:71 +#: templates/consumption/consumptionform_detail.html:55 templates/consumption/consumptionform_list.html:71 msgid "Status" msgstr "Status" -#: templates/consumption/consumptionform_detail.html:58 -#: templates/consumption/consumptionform_list.html:88 +#: templates/consumption/consumptionform_detail.html:58 templates/consumption/consumptionform_list.html:88 msgid "Completed" msgstr "Ingezonden" -#: templates/consumption/consumptionform_detail.html:60 -#: templates/consumption/consumptionform_list.html:90 +#: templates/consumption/consumptionform_detail.html:60 templates/consumption/consumptionform_list.html:90 msgid "Pending" msgstr "In afwachting" -#: templates/consumption/consumptionform_detail.html:67 -#: templates/consumption/pdf/page.html:75 +#: templates/consumption/consumptionform_detail.html:67 templates/consumption/pdf/page.html:75 msgid "Signed off by" msgstr "Ondertekend door" -#: templates/consumption/consumptionform_detail.html:70 -#: templates/consumption/pdf/page.html:75 +#: templates/consumption/consumptionform_detail.html:70 templates/consumption/pdf/page.html:75 msgid "on" msgstr "op" -#: templates/consumption/consumptionform_detail.html:72 -#: templates/consumption/pdf/page.html:75 +#: templates/consumption/consumptionform_detail.html:72 templates/consumption/pdf/page.html:75 msgid "at" msgstr "om" -#: templates/consumption/consumptionform_detail.html:88 -#: templates/consumption/dcf_check.html:66 -#: templates/consumption/partials/weight_consumption.html:15 -#: templates/consumption/pdf/page.html:41 +#: templates/consumption/consumptionform_detail.html:88 templates/consumption/dcf_check.html:66 templates/consumption/partials/weight_consumption.html:15 templates/consumption/pdf/page.html:41 msgid "Kegs changed" msgstr "Fusten verwisseld" -#: templates/consumption/consumptionform_detail.html:89 -#: templates/consumption/dcf_check.html:67 +#: templates/consumption/consumptionform_detail.html:89 templates/consumption/dcf_check.html:67 msgid "Flowmeter" msgstr "Flowmeter" -#: templates/consumption/consumptionform_detail.html:91 -#: templates/consumption/pdf/page.html:47 +#: templates/consumption/consumptionform_detail.html:91 templates/consumption/pdf/page.html:47 msgid "Weight" msgstr "Gewicht" @@ -2910,13 +1296,11 @@ msgstr "Geen missende formulieren. Hulde!" msgid "Has comments:" msgstr "Heeft commentaar:" -#: templates/consumption/consumptionproduct_form.html:5 -#: templates/consumption/consumptionproduct_form.html:15 +#: templates/consumption/consumptionproduct_form.html:5 templates/consumption/consumptionproduct_form.html:15 msgid "Edit consumption product" msgstr "Wijzig voorraadproduct" -#: templates/consumption/consumptionproduct_form.html:7 -#: templates/consumption/consumptionproduct_form.html:17 +#: templates/consumption/consumptionproduct_form.html:7 templates/consumption/consumptionproduct_form.html:17 msgid "New consumption product" msgstr "Nieuw voorraadproduct" @@ -2928,8 +1312,7 @@ msgstr "Nieuw (KG)" msgid "Add (CE)" msgstr "Nieuw (CE)" -#: templates/consumption/consumptionproduct_list.html:26 -#: templates/consumption/consumptionproduct_list.html:66 +#: templates/consumption/consumptionproduct_list.html:26 templates/consumption/consumptionproduct_list.html:66 msgid "Type" msgstr "Type" @@ -2937,8 +1320,7 @@ msgstr "Type" msgid "Archived products" msgstr "Gearchiveerde producten" -#: templates/consumption/dcf.html:21 templates/consumption/dcf_check.html:10 -#: templates/consumption/dcf_finished.html:9 +#: templates/consumption/dcf.html:21 templates/consumption/dcf_check.html:10 templates/consumption/dcf_finished.html:9 msgid "Digital consumption form" msgstr "Digitaal verbruiksformulier" @@ -2970,8 +1352,7 @@ msgstr "Wijzigen" msgid "Correct the errors listed above before completing the form." msgstr "Verbeter bovenstaande fouten voordat je het formulier afrond." -#: templates/consumption/dcf_export.html:3 -#: templates/consumption/dcf_export.html:7 +#: templates/consumption/dcf_export.html:3 templates/consumption/dcf_export.html:7 msgid "Export consumption forms" msgstr "Verbruiksformulieren exporteren" @@ -3031,8 +1412,7 @@ msgstr "Fustbier" msgid "Begin" msgstr "Begin" -#: templates/consumption/pdf/page.html:40 -#: templates/scheduling/event_detail.html:64 +#: templates/consumption/pdf/page.html:40 templates/scheduling/event_detail.html:64 msgid "End" msgstr "Einde" @@ -3065,16 +1445,8 @@ msgid "Developers" msgstr "Ontwikkelaars" #: templates/general/about.html:13 -msgid "" -"Alexia was developed for the drink basements under management of SBZ " -"(Zilverling Drink Management Foundation). The base of this application was " -"developed during the design project course, part of the Computer Science " -"Bachelor. The following people contributed to this project:" -msgstr "" -"Alexia is ontwikkeld voor het beheer van de borrelruimtes van SBZ (Stichting " -"Borrelbeheer Zilverling). De basis van deze applicatie is gelegd tijdens het " -"Ontwerpproject van de bachelor Technische Informatica. De volgende mensen " -"hebben daaraan bijgedragen:" +msgid "Alexia was developed for the drink basements under management of SBZ (Zilverling Drink Management Foundation). The base of this application was developed during the design project course, part of the Computer Science Bachelor. The following people contributed to this project:" +msgstr "Alexia is ontwikkeld voor het beheer van de borrelruimtes van SBZ (Stichting Borrelbeheer Zilverling). De basis van deze applicatie is gelegd tijdens het Ontwerpproject van de bachelor Technische Informatica. De volgende mensen hebben daaraan bijgedragen:" #: templates/general/about.html:27 msgid "After the design project development of Alexia was continued by" @@ -3084,8 +1456,7 @@ msgstr "Na het Ontwerpproject is Alexia doorontwikkeld door" msgid "Drinks" msgstr "Borrels" -#: templates/organization/certificate_form.html:3 -#: templates/organization/certificate_form.html:8 +#: templates/organization/certificate_form.html:3 templates/organization/certificate_form.html:8 msgid "Upload IVA certificate" msgstr "IVA certificaat uploaden" @@ -3094,19 +1465,14 @@ msgid "Caution!" msgstr "Let op!" #: templates/organization/certificate_form.html:14 -msgid "" -"This is already an approved IVA certificate. Uploading a new one will make " -"the current one invalid!" -msgstr "" -"Dit is al een IVA-ceritficaat dat goedgekeurd is. Als je een nieuwe upload " -"wordt de oude automatisch verwijderd!" +msgid "This is already an approved IVA certificate. Uploading a new one will make the current one invalid!" +msgstr "Dit is al een IVA-ceritficaat dat goedgekeurd is. Als je een nieuwe upload wordt de oude automatisch verwijderd!" #: templates/organization/certificate_form.html:21 msgid "User" msgstr "Gebruiker" -#: templates/organization/membership_confirm_delete.html:3 -#: templates/organization/membership_confirm_delete.html:7 +#: templates/organization/membership_confirm_delete.html:3 templates/organization/membership_confirm_delete.html:7 msgid "Delete user" msgstr "Gebruiker verwijderen" @@ -3127,6 +1493,10 @@ msgstr "Aantal keer getapt" msgid "User details" msgstr "Gebruikersgegevens" +#: templates/organization/membership_detail.html:48 templates/profile/profile.html:15 +msgid "Email address" +msgstr "E-mailadres" + #: templates/organization/membership_detail.html:57 msgid "Times tended last year" msgstr "Getapt afgelopen jaar" @@ -3135,58 +1505,40 @@ msgstr "Getapt afgelopen jaar" msgid "Last tended events" msgstr "Laatst getapte activiteiten" -#: templates/organization/membership_form.html:5 -#: templates/organization/membership_form.html:15 +#: templates/organization/membership_form.html:5 templates/organization/membership_form.html:15 msgid "Modify user" msgstr "Gebruiker wijzigen" -#: templates/organization/membership_form.html:7 -#: templates/organization/membership_form.html:17 -#: templates/organization/membership_list.html:12 +#: templates/organization/membership_form.html:7 templates/organization/membership_form.html:17 templates/organization/membership_list.html:12 msgid "Add user" msgstr "Gebruiker toevoegen" -#: templates/organization/membership_iva.html:3 -#: templates/organization/membership_iva.html:8 +#: templates/organization/membership_iva.html:3 templates/organization/membership_iva.html:8 #, python-format msgid "Tenders of %(organization)s" msgstr "Tappers van %(organization)s" -#: templates/organization/membership_iva.html:16 -#: templates/organization/membership_list.html:27 +#: templates/organization/membership_iva.html:16 templates/organization/membership_list.html:27 msgid "Authorization" msgstr "Autorisatie" -#: templates/organization/membership_iva.html:17 -#: templates/organization/membership_list.html:29 -#: templates/scheduling/event_list.html:41 +#: templates/organization/membership_iva.html:17 templates/organization/membership_list.html:29 templates/scheduling/event_list.html:41 msgid "IVA" msgstr "IVA" -#: templates/organization/membership_iva.html:26 -#: templates/organization/membership_list.html:47 -#: templates/profile/profile.html:53 templates/profile/profile.html:155 -#: templates/scheduling/event_bartender.html:3 -#: templates/scheduling/event_bartender.html:7 -#: templates/scheduling/event_bartender_availability_form.html:19 -#: templates/scheduling/event_matrix.html:17 +#: templates/organization/membership_iva.html:26 templates/organization/membership_list.html:47 templates/profile/profile.html:53 templates/profile/profile.html:155 templates/scheduling/event_bartender.html:3 templates/scheduling/event_bartender.html:7 templates/scheduling/event_bartender_availability_form.html:19 templates/scheduling/event_matrix.html:17 msgid "Bartender" msgstr "Tapper" -#: templates/organization/membership_iva.html:27 -#: templates/organization/membership_list.html:48 -#: templates/profile/profile.html:156 +#: templates/organization/membership_iva.html:27 templates/organization/membership_list.html:48 templates/profile/profile.html:156 msgid "Planner" msgstr "Planner" -#: templates/organization/membership_iva.html:28 -#: templates/organization/membership_list.html:49 -#: templates/profile/profile.html:157 +#: templates/organization/membership_iva.html:28 templates/organization/membership_list.html:49 templates/profile/profile.html:157 msgid "Manager" msgstr "Manager" -#: templates/organization/membership_list.html:3 -#: templates/organization/membership_list.html:8 +#: templates/organization/membership_list.html:3 templates/organization/membership_list.html:8 #, python-format msgid "Users of %(organization)s" msgstr "Gebruikers van %(organization)s" @@ -3195,20 +1547,15 @@ msgstr "Gebruikers van %(organization)s" msgid "Print IVA list" msgstr "IVA-lijst uitdraaien" -#: templates/organization/membership_list.html:28 -#: templates/profile/profile.html:93 +#: templates/organization/membership_list.html:28 templates/profile/profile.html:93 msgid "Active" msgstr "Actief" -#: templates/organization/membership_list.html:30 -#: templates/profile/profile.html:40 templates/scheduling/event_matrix.html:18 +#: templates/organization/membership_list.html:30 templates/profile/profile.html:40 templates/scheduling/event_matrix.html:18 msgid "Tended" msgstr "Getapt" -#: templates/organization/membership_list.html:31 -#: templates/scheduling/event_detail.html:135 -#: templates/scheduling/event_detail.html:141 -#: templates/scheduling/event_matrix.html:19 +#: templates/organization/membership_list.html:31 templates/scheduling/event_detail.html:135 templates/scheduling/event_detail.html:141 templates/scheduling/event_matrix.html:19 msgid "Last tended" msgstr "Laatst getapt" @@ -3249,8 +1596,7 @@ msgstr "Mijn uitgaven op %(event)s" msgid "There are no payments!" msgstr "Er zijn geen betalingen!" -#: templates/profile/expenditure_list.html:3 -#: templates/profile/expenditure_list.html:8 +#: templates/profile/expenditure_list.html:3 templates/profile/expenditure_list.html:8 msgid "My expenditures" msgstr "Mijn uitgaven" @@ -3296,8 +1642,7 @@ msgstr "Uitgegeven" #: templates/profile/profile.html:87 msgid "This is an overview of RFID cards linked to your account." -msgstr "" -"Dit is een overzicht van RFID-kaarten die aan jouw account gekoppeld zijn." +msgstr "Dit is een overzicht van RFID-kaarten die aan jouw account gekoppeld zijn." #: templates/profile/profile.html:92 msgid "ID number" @@ -3324,12 +1669,8 @@ msgid "Autorization" msgstr "Autorisatie" #: templates/profile/profile.html:142 -msgid "" -"The following roles are assigned to you. Contact the organization in " -"question for more details." -msgstr "" -"De volgende rollen zijn aan jou toegekend. Neem contact op met de " -"betreffende vereniging voor meer details." +msgid "The following roles are assigned to you. Contact the organization in question for more details." +msgstr "De volgende rollen zijn aan jou toegekend. Neem contact op met de betreffende vereniging voor meer details." #: templates/profile/profile.html:147 msgid "Roles" @@ -3395,39 +1736,30 @@ msgstr "Log in met je lokale Alexia-account en wachtwoord." #, python-format msgid "" "\n" -" If you have no local Alexia account, please log in with your University account.\n" +" If you have no local Alexia account, please log in with your University account.\n" " " msgstr "" "\n" -" Als je geen lokaal Alexia-account hebt, log dan in met je Universiteitsaccount.\n" +" Als je geen lokaal Alexia-account hebt, log dan in met je Universiteitsaccount.\n" " " -#: templates/registration/register.html:3 -#: templates/registration/register.html:11 +#: templates/registration/register.html:3 templates/registration/register.html:11 msgid "Registration" msgstr "Registratie" #: templates/registration/register.html:12 -msgid "" -"Your account details are not complete. Please fill in this form to continue." -msgstr "" -"Nog niet al jouw gegevens zijn bekend bij Alexia, voer deze in om verder te " -"mogen." +msgid "Your account details are not complete. Please fill in this form to continue." +msgstr "Nog niet al jouw gegevens zijn bekend bij Alexia, voer deze in om verder te mogen." -#: templates/scheduling/availability_form.html:5 -#: templates/scheduling/availability_form.html:15 +#: templates/scheduling/availability_form.html:5 templates/scheduling/availability_form.html:15 msgid "Edit availability" msgstr "Wijzig beschikbaarheid" -#: templates/scheduling/availability_form.html:7 -#: templates/scheduling/availability_form.html:17 +#: templates/scheduling/availability_form.html:7 templates/scheduling/availability_form.html:17 msgid "New availability" msgstr "Nieuwe beschikbaarheid" -#: templates/scheduling/availability_list.html:3 -#: templates/scheduling/availability_list.html:8 +#: templates/scheduling/availability_list.html:3 templates/scheduling/availability_list.html:8 #, python-format msgid "Availabilities of %(organization)s" msgstr "Beschikbaarheden van %(organization)s" @@ -3440,10 +1772,11 @@ msgstr "Soort" msgid "No availabilities defined." msgstr "Geen beschikbaarheden gedefinieerd." -#: templates/scheduling/event_bartender.html:17 -#: templates/scheduling/event_calendar.html:27 -#: templates/scheduling/event_detail.html:130 -#: templates/scheduling/event_list.html:42 +#: templates/scheduling/event_bartender.html:14 templates/scheduling/event_list.html:36 +msgid "Time" +msgstr "Tijd" + +#: templates/scheduling/event_bartender.html:17 templates/scheduling/event_calendar.html:27 templates/scheduling/event_detail.html:130 templates/scheduling/event_list.html:42 msgid "Bartenders" msgstr "Tappers" @@ -3455,8 +1788,7 @@ msgstr "Tappersinstructie" msgid "You don't have any events to tend." msgstr "Je hoeft nergens te tappen." -#: templates/scheduling/event_bartender_availability_form.html:3 -#: templates/scheduling/event_bartender_availability_form.html:7 +#: templates/scheduling/event_bartender_availability_form.html:3 templates/scheduling/event_bartender_availability_form.html:7 msgid "Edit bartender availability" msgstr "Bewerk tapperbeschikbaarheid" @@ -3484,6 +1816,54 @@ msgstr "maand" msgid "week" msgstr "week" +#: templates/scheduling/event_calendar.html:75 +msgid "January" +msgstr "januari" + +#: templates/scheduling/event_calendar.html:75 +msgid "February" +msgstr "februari" + +#: templates/scheduling/event_calendar.html:75 +msgid "March" +msgstr "maart" + +#: templates/scheduling/event_calendar.html:75 +msgid "April" +msgstr "april" + +#: templates/scheduling/event_calendar.html:76 templates/scheduling/event_calendar.html:79 +msgid "May" +msgstr "mei" + +#: templates/scheduling/event_calendar.html:76 +msgid "June" +msgstr "juni" + +#: templates/scheduling/event_calendar.html:76 +msgid "July" +msgstr "juli" + +#: templates/scheduling/event_calendar.html:76 +msgid "August" +msgstr "augustus" + +#: templates/scheduling/event_calendar.html:77 +msgid "September" +msgstr "september" + +#: templates/scheduling/event_calendar.html:77 +msgid "October" +msgstr "oktober" + +#: templates/scheduling/event_calendar.html:77 +msgid "November" +msgstr "november" + +#: templates/scheduling/event_calendar.html:77 +msgid "December" +msgstr "december" + #: templates/scheduling/event_calendar.html:78 msgid "Jan." msgstr "jan" @@ -3528,6 +1908,62 @@ msgstr "nov" msgid "Dec." msgstr "dec" +#: templates/scheduling/event_calendar.html:81 +msgid "Sunday" +msgstr "zondag" + +#: templates/scheduling/event_calendar.html:81 +msgid "Monday" +msgstr "maandag" + +#: templates/scheduling/event_calendar.html:81 +msgid "Tuesday" +msgstr "dinsdag" + +#: templates/scheduling/event_calendar.html:81 +msgid "Wednesday" +msgstr "woensdag" + +#: templates/scheduling/event_calendar.html:82 +msgid "Thursday" +msgstr "donderdag" + +#: templates/scheduling/event_calendar.html:82 +msgid "Friday" +msgstr "vrijdag" + +#: templates/scheduling/event_calendar.html:82 +msgid "Saturday" +msgstr "zaterdag" + +#: templates/scheduling/event_calendar.html:83 +msgid "Sun" +msgstr "zo" + +#: templates/scheduling/event_calendar.html:83 +msgid "Mon" +msgstr "ma" + +#: templates/scheduling/event_calendar.html:83 +msgid "Tue" +msgstr "di" + +#: templates/scheduling/event_calendar.html:83 +msgid "Wed" +msgstr "wo" + +#: templates/scheduling/event_calendar.html:84 +msgid "Thu" +msgstr "do" + +#: templates/scheduling/event_calendar.html:84 +msgid "Fri" +msgstr "vr" + +#: templates/scheduling/event_calendar.html:84 +msgid "Sat" +msgstr "za" + #: templates/scheduling/event_calendar.html:85 msgid "Week" msgstr "Week" @@ -3536,15 +1972,11 @@ msgstr "Week" msgid "Loading..." msgstr "Laden..." -#: templates/scheduling/event_calendar.html:101 -#: templates/scheduling/event_form.html:7 -#: templates/scheduling/event_form.html:17 -#: templates/scheduling/event_list.html:13 +#: templates/scheduling/event_calendar.html:101 templates/scheduling/event_form.html:7 templates/scheduling/event_form.html:17 templates/scheduling/event_list.html:13 msgid "Add event" msgstr "Activiteit toevoegen" -#: templates/scheduling/event_confirm_delete.html:3 -#: templates/scheduling/event_confirm_delete.html:7 +#: templates/scheduling/event_confirm_delete.html:3 templates/scheduling/event_confirm_delete.html:7 msgid "Delete event" msgstr "Activiteit verwijderen" @@ -3579,22 +2011,21 @@ msgstr "Tijdelijke producten" #: templates/scheduling/event_detail.html:75 msgid "Temporary products can only be created or modified by managers." -msgstr "" -"Tijdelijke producten kunnen alleen aangemaakt of gewijzigd worden door " -"managers." +msgstr "Tijdelijke producten kunnen alleen aangemaakt of gewijzigd worden door managers." #: templates/scheduling/event_detail.html:110 msgid "No temporary products defined." msgstr "Geen tijdelijke producten gedefinieerd." -#: templates/scheduling/event_detail.html:135 -#: templates/scheduling/event_detail.html:141 -#: templates/scheduling/event_matrix.html:30 +#: templates/scheduling/event_detail.html:135 templates/scheduling/event_detail.html:141 templates/scheduling/event_matrix.html:30 msgid "Never" msgstr "Nooit" -#: templates/scheduling/event_form.html:5 -#: templates/scheduling/event_form.html:15 +#: templates/scheduling/event_detail.html:142 +msgid "Unknown" +msgstr "Onbekend" + +#: templates/scheduling/event_form.html:5 templates/scheduling/event_form.html:15 msgid "Edit event" msgstr "Activiteit bewerken" @@ -3606,8 +2037,7 @@ msgstr "Filters" msgid "Kegs" msgstr "Fusten" -#: templates/scheduling/event_list.html:78 -#: templates/scheduling/event_list.html:79 +#: templates/scheduling/event_list.html:78 templates/scheduling/event_list.html:79 msgid "Has tender comment:" msgstr "Heeft tappersinstructie:" @@ -3641,18 +2071,15 @@ msgstr "Er is niks ingepland na %(datetime)s." msgid "No events have been planned." msgstr "Er zijn geen evenementen gepland." -#: templates/scheduling/mailtemplate_detail.html:3 -#: templates/scheduling/mailtemplate_detail.html:8 +#: templates/scheduling/mailtemplate_detail.html:3 templates/scheduling/mailtemplate_detail.html:8 msgid "Mail template" msgstr "Mailsjabloon" -#: templates/scheduling/mailtemplate_detail.html:28 -#: templates/scheduling/mailtemplate_list.html:16 +#: templates/scheduling/mailtemplate_detail.html:28 templates/scheduling/mailtemplate_list.html:16 msgid "Subject" msgstr "Onderwerp" -#: templates/scheduling/mailtemplate_detail.html:32 -#: templates/scheduling/mailtemplate_list.html:17 +#: templates/scheduling/mailtemplate_detail.html:32 templates/scheduling/mailtemplate_list.html:17 msgid "Is active" msgstr "Is actief" @@ -3660,13 +2087,11 @@ msgstr "Is actief" msgid "Template" msgstr "Sjabloon" -#: templates/scheduling/mailtemplate_form.html:3 -#: templates/scheduling/mailtemplate_form.html:7 +#: templates/scheduling/mailtemplate_form.html:3 templates/scheduling/mailtemplate_form.html:7 msgid "Edit mail template" msgstr "Wijzig mailsjabloon" -#: templates/scheduling/mailtemplate_list.html:3 -#: templates/scheduling/mailtemplate_list.html:8 +#: templates/scheduling/mailtemplate_list.html:3 templates/scheduling/mailtemplate_list.html:8 #, python-format msgid "Mail templates of %(organization)s" msgstr "Mailsjablonen van %(organization)s" @@ -3675,5 +2100,248 @@ msgstr "Mailsjablonen van %(organization)s" msgid "No mail templates defined." msgstr "Geen mailsjablonen gedefinieerd." +#, fuzzy +#~ msgid "Enter a valid value." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Syndication" +#~ msgstr "Specificatie" + +#, fuzzy +#~ msgid "Enter a valid URL." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid integer." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid email address." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid IPv4 address." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid IPv6 address." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Decimal number" +#~ msgstr "Identificatienr." + +#, fuzzy +#~ msgid "Duration" +#~ msgstr "Autorisatie" + +#, fuzzy +#~ msgid "File path" +#~ msgstr "Bestandsformaat" + +#, fuzzy +#~ msgid "IPv4 address" +#~ msgstr "E-mailadres" + +#, fuzzy +#~ msgid "IP address" +#~ msgstr "E-mailadres" + +#, fuzzy +#~ msgid "Raw binary data" +#~ msgstr "aanvullende gegevens" + +#, fuzzy +#~ msgid "Universally unique identifier" +#~ msgstr "iCal identificatie" + +#, fuzzy +#~ msgid "Enter a whole number." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid date." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid time." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid date/time." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid duration." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Enter a valid UUID." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Order" +#~ msgstr "Transacties" + +#, fuzzy +#~ msgid "midnight" +#~ msgstr "Begingewicht" + +#, fuzzy +#~ msgid "jan" +#~ msgstr "en" + +#, fuzzy +#~ msgid "mar" +#~ msgstr "Samenvatting" + +#, fuzzy +#~ msgid "may" +#~ msgstr "mei" + +#, fuzzy +#~ msgid "jun" +#~ msgstr "zo" + +#, fuzzy +#~ msgid "oct" +#~ msgstr "product" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "Jan." +#~ msgstr "jan" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "Feb." +#~ msgstr "feb" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "March" +#~ msgstr "maart" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "April" +#~ msgstr "april" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "May" +#~ msgstr "mei" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "June" +#~ msgstr "juni" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "July" +#~ msgstr "juli" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "Aug." +#~ msgstr "aug" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "Oct." +#~ msgstr "oct" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "Nov." +#~ msgstr "nov" + +#, fuzzy +#~ msgctxt "abbrev. month" +#~ msgid "Dec." +#~ msgstr "dec" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "January" +#~ msgstr "januari" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "February" +#~ msgstr "februari" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "March" +#~ msgstr "maart" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "April" +#~ msgstr "april" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "May" +#~ msgstr "mei" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "June" +#~ msgstr "juni" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "July" +#~ msgstr "juli" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "August" +#~ msgstr "augustus" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "September" +#~ msgstr "september" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "October" +#~ msgstr "oktober" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "November" +#~ msgstr "november" + +#, fuzzy +#~ msgctxt "alt. month" +#~ msgid "December" +#~ msgstr "december" + +#, fuzzy, python-format +#~ msgid "%d month" +#~ msgid_plural "%d months" +#~ msgstr[0] "maand" +#~ msgstr[1] "maand" + +#, fuzzy, python-format +#~ msgid "%d week" +#~ msgid_plural "%d weeks" +#~ msgstr[0] "week" +#~ msgstr[1] "week" + +#, fuzzy +#~ msgid "Enter valid JSON." +#~ msgstr "Voer een geldige gebruikersnaam in" + +#, fuzzy +#~ msgid "Method not found." +#~ msgstr "Niet gevonden" + #~ msgid "Logging in failed, please try again." #~ msgstr "Het inloggen is mislukt, probeer het alsjeblieft opnieuw." diff --git a/templates/billing/juliana.html b/templates/billing/juliana.html index 62320ab..ee250ba 100644 --- a/templates/billing/juliana.html +++ b/templates/billing/juliana.html @@ -203,7 +203,7 @@

Rekening

- Write off in: + Afschrijven over: {{ countdown }}
@@ -218,7 +218,7 @@

Rekening

Cancel + id="cancel-writeoff">Annuleren Ok