mirror of
https://github.com/pretix/pretix.git
synced 2026-01-09 22:12:26 +00:00
Compare commits
58 Commits
invoice-pl
...
v2025.8.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ae9abe0c8e | ||
|
|
860333447c | ||
|
|
3bebdb3e28 | ||
|
|
4ad6a92f1d | ||
|
|
a34b6a04ea | ||
|
|
39e5711e95 | ||
|
|
6d422f9ae4 | ||
|
|
ccf4cbfd63 | ||
|
|
132a9aa9f2 | ||
|
|
257bd17b4a | ||
|
|
10bfd51d99 | ||
|
|
50225fd2f4 | ||
|
|
cd4fc1d6d8 | ||
|
|
4931059da3 | ||
|
|
15d15f978f | ||
|
|
34dbbdd82f | ||
|
|
9a54823515 | ||
|
|
4c76bb85a8 | ||
|
|
ed01a149b7 | ||
|
|
89adcc11c6 | ||
|
|
7037f348bf | ||
|
|
e694d3ca14 | ||
|
|
f3e1fd9135 | ||
|
|
850552c235 | ||
|
|
fb8a8142d9 | ||
|
|
5416c0cdfd | ||
|
|
a2421f9c66 | ||
|
|
8d06c79dd9 | ||
|
|
08961091f6 | ||
|
|
a7cbcb29b5 | ||
|
|
11fede5432 | ||
|
|
b8b89f3040 | ||
|
|
3b30553880 | ||
|
|
dd441c09f7 | ||
|
|
31b2841c4f | ||
|
|
baab35b81f | ||
|
|
c488901dc5 | ||
|
|
2679f79c3b | ||
|
|
ca3570df11 | ||
|
|
5bd08061a1 | ||
|
|
724c7d572f | ||
|
|
75dd98519f | ||
|
|
9bf4466732 | ||
|
|
ed9250c522 | ||
|
|
b3974067a5 | ||
|
|
cd6fbd886c | ||
|
|
0bb390f0a9 | ||
|
|
0183f3d40f | ||
|
|
82fcc4fe42 | ||
|
|
d42f8ece53 | ||
|
|
a8bffbd402 | ||
|
|
991b116026 | ||
|
|
2374d9b78c | ||
|
|
80785bee54 | ||
|
|
ea530ac6bf | ||
|
|
2dd8cc82f2 | ||
|
|
38fae12c37 | ||
|
|
e34a3ab2ce |
@@ -80,12 +80,17 @@ lines list of objects The actual invo
|
||||
for all invoice lines
|
||||
created before this field was introduced as well as for
|
||||
all lines not created by a fee (e.g. a product).
|
||||
├ period_start datetime Start date of the service or delivery period of the invoice line.
|
||||
Can be ``null`` if not known.
|
||||
├ period_end datetime End date of the service or delivery period of the invoice line.
|
||||
Can be ``null`` if not known.
|
||||
├ event_date_from datetime Deprecated alias of ``period_start``.
|
||||
├ event_date_to datetime Deprecated alias of ``period_end``.
|
||||
├ event_date_from datetime Start date of the (sub)event this line was created for as it
|
||||
was set during invoice creation. Can be ``null`` for all invoice
|
||||
lines created before this was introduced as well as for lines in
|
||||
an event series not created by a product (e.g. shipping or
|
||||
cancellation fees).
|
||||
├ event_date_to datetime End date of the (sub)event this line was created for as it
|
||||
was set during invoice creation. Can be ``null`` for all invoice
|
||||
lines created before this was introduced as well as for lines in
|
||||
an event series not created by a product (e.g. shipping or
|
||||
cancellation fees) as well as whenever the respective (sub)event
|
||||
has no end date set.
|
||||
├ event_location string Location of the (sub)event this line was created for as it
|
||||
was set during invoice creation. Can be ``null`` for all invoice
|
||||
lines created before this was introduced as well as for lines in
|
||||
@@ -158,10 +163,10 @@ transmission_email_address string Optional. An em
|
||||
Business customers only.
|
||||
===================================== ========================== =======================================================
|
||||
|
||||
PEPPOL
|
||||
Peppol
|
||||
""""""
|
||||
|
||||
The identifier ``"peppol"`` represents the transmission of XML invoices through the `PEPPOL`_ network.
|
||||
The identifier ``"peppol"`` represents the transmission of XML invoices through the `Peppol`_ network.
|
||||
This is only available for business addresses.
|
||||
This is not supported by pretix out of the box and requires the use of a suitable plugin.
|
||||
The ``transmission_info`` object may contain the following properties:
|
||||
@@ -171,7 +176,7 @@ The ``transmission_info`` object may contain the following properties:
|
||||
===================================== ========================== =======================================================
|
||||
Field Type Description
|
||||
===================================== ========================== =======================================================
|
||||
transmission_peppol_participant_id string Required. The PEPPOL participant ID of the recipient.
|
||||
transmission_peppol_participant_id string Required. The Peppol participant ID of the recipient.
|
||||
===================================== ========================== =======================================================
|
||||
|
||||
Italian Exchange System
|
||||
@@ -269,8 +274,6 @@ List of all invoices
|
||||
"fee_internal_type": null,
|
||||
"event_date_from": "2017-12-27T10:00:00Z",
|
||||
"event_date_to": null,
|
||||
"period_start": "2017-12-27T10:00:00Z",
|
||||
"period_end": "2017-12-27T10:00:00Z",
|
||||
"event_location": "Heidelberg",
|
||||
"attendee_name": null,
|
||||
"gross_value": "23.00",
|
||||
@@ -417,8 +420,6 @@ Fetching individual invoices
|
||||
"fee_internal_type": null,
|
||||
"event_date_from": "2017-12-27T10:00:00Z",
|
||||
"event_date_to": null,
|
||||
"period_start": "2017-12-27T10:00:00Z",
|
||||
"period_end": "2017-12-27T10:00:00Z",
|
||||
"event_location": "Heidelberg",
|
||||
"attendee_name": null,
|
||||
"gross_value": "23.00",
|
||||
@@ -604,5 +605,5 @@ but in other cases transmission may need to be triggered manually.
|
||||
:statuscode 409: The invoice is currently in transmission
|
||||
|
||||
|
||||
.. _PEPPOL: https://en.wikipedia.org/wiki/PEPPOL
|
||||
.. _Peppol: https://en.wikipedia.org/wiki/PEPPOL
|
||||
.. _Sistema di Interscambio: https://it.wikipedia.org/wiki/Fattura_elettronica_in_Italia
|
||||
@@ -418,6 +418,7 @@ List of all orders
|
||||
"seat": null,
|
||||
"checkins": [
|
||||
{
|
||||
"id": 1337,
|
||||
"list": 44,
|
||||
"type": "entry",
|
||||
"gate": null,
|
||||
@@ -662,6 +663,7 @@ Fetching individual orders
|
||||
"seat": null,
|
||||
"checkins": [
|
||||
{
|
||||
"id": 1337,
|
||||
"list": 44,
|
||||
"type": "entry",
|
||||
"gate": null,
|
||||
@@ -1632,6 +1634,7 @@ List of all order positions
|
||||
"blocked": null,
|
||||
"checkins": [
|
||||
{
|
||||
"id": 1337,
|
||||
"list": 44,
|
||||
"type": "entry",
|
||||
"gate": null,
|
||||
@@ -1760,6 +1763,7 @@ Fetching individual positions
|
||||
"seat": null,
|
||||
"checkins": [
|
||||
{
|
||||
"id": 1337,
|
||||
"list": 44,
|
||||
"type": "entry",
|
||||
"gate": null,
|
||||
|
||||
@@ -23,7 +23,7 @@ There are multiple signals that will be sent out in the ordering cycle:
|
||||
|
||||
.. automodule:: pretix.base.signals
|
||||
:no-index:
|
||||
:members: validate_cart, validate_cart_addons, validate_order, order_valid_if_pending, order_fee_calculation, order_paid, order_placed, order_canceled, order_reactivated, order_expired, order_expiry_changed, order_modified, order_changed, order_approved, order_denied, order_fee_type_name, allow_ticket_download, order_split, order_gracefully_delete, build_invoice_data, invoice_line_text
|
||||
:members: validate_cart, validate_cart_addons, validate_order, order_valid_if_pending, order_fee_calculation, order_paid, order_placed, order_canceled, order_reactivated, order_expired, order_expiry_changed, order_modified, order_changed, order_approved, order_denied, order_fee_type_name, allow_ticket_download, order_split, order_gracefully_delete, invoice_line_text
|
||||
|
||||
Check-ins
|
||||
"""""""""
|
||||
@@ -37,7 +37,7 @@ Frontend
|
||||
--------
|
||||
|
||||
.. automodule:: pretix.presale.signals
|
||||
:members: html_head, html_footer, footer_link, global_footer_link, front_page_top, front_page_bottom, front_page_bottom_widget, fee_calculation_for_cart, contact_form_fields, question_form_fields, contact_form_fields_overrides, question_form_fields_overrides, checkout_confirm_messages, checkout_confirm_page_content, checkout_all_optional, html_page_header, render_seating_plan, checkout_flow_steps, position_info, position_info_top, item_description, global_html_head, global_html_footer, global_html_page_header, seatingframe_html_head
|
||||
:members: html_head, html_footer, footer_link, global_footer_link, front_page_top, front_page_bottom, front_page_bottom_widget, fee_calculation_for_cart, contact_form_fields, question_form_fields, contact_form_fields_overrides, question_form_fields_overrides, checkout_confirm_messages, checkout_confirm_page_content, checkout_all_optional, html_page_header, render_seating_plan, checkout_flow_steps, position_info, position_info_top, item_description, global_html_head, global_html_footer, global_html_page_header, seatingframe_html_head, filter_subevents
|
||||
|
||||
|
||||
.. automodule:: pretix.presale.signals
|
||||
|
||||
@@ -6,4 +6,4 @@ sphinxcontrib-images
|
||||
sphinxcontrib-jquery
|
||||
sphinxcontrib-spelling==8.*
|
||||
sphinxemoji
|
||||
pyenchant==3.2.*
|
||||
pyenchant==3.3.*
|
||||
|
||||
@@ -7,4 +7,4 @@ sphinxcontrib-images
|
||||
sphinxcontrib-jquery
|
||||
sphinxcontrib-spelling==8.*
|
||||
sphinxemoji
|
||||
pyenchant==3.2.*
|
||||
pyenchant==3.3.*
|
||||
|
||||
@@ -35,12 +35,12 @@ dependencies = [
|
||||
"cryptography>=44.0.0",
|
||||
"css-inline==0.17.*",
|
||||
"defusedcsv>=1.1.0",
|
||||
"Django[argon2]==4.2.*,>=4.2.15",
|
||||
"Django[argon2]==4.2.*,>=4.2.24",
|
||||
"django-bootstrap3==25.2",
|
||||
"django-compressor==4.5.1",
|
||||
"django-countries==7.6.*",
|
||||
"django-filter==25.1",
|
||||
"django-formset-js-improved==0.5.0.3",
|
||||
"django-formset-js-improved==0.5.0.4",
|
||||
"django-formtools==2.5.1",
|
||||
"django-hierarkey==2.0.*,>=2.0.1",
|
||||
"django-hijack==3.7.*",
|
||||
@@ -79,7 +79,7 @@ dependencies = [
|
||||
"protobuf==6.32.*",
|
||||
"psycopg2-binary",
|
||||
"pycountry",
|
||||
"pycparser==2.22",
|
||||
"pycparser==2.23",
|
||||
"pycryptodome==3.23.*",
|
||||
"pypdf==6.0.*",
|
||||
"python-bidi==0.6.*", # Support for Arabic in reportlab
|
||||
@@ -91,7 +91,7 @@ dependencies = [
|
||||
"redis==6.4.*",
|
||||
"reportlab==4.4.*",
|
||||
"requests==2.32.*",
|
||||
"sentry-sdk==2.37.*",
|
||||
"sentry-sdk==2.38.*",
|
||||
"sepaxml==2.6.*",
|
||||
"stripe==7.9.*",
|
||||
"text-unidecode==1.*",
|
||||
@@ -120,7 +120,7 @@ dev = [
|
||||
"pytest-cache",
|
||||
"pytest-cov",
|
||||
"pytest-django==4.*",
|
||||
"pytest-mock==3.14.*",
|
||||
"pytest-mock==3.15.*",
|
||||
"pytest-sugar",
|
||||
"pytest-xdist==3.8.*",
|
||||
"pytest==8.4.*",
|
||||
|
||||
@@ -25,8 +25,8 @@ coverage:
|
||||
coverage run -m py.test
|
||||
|
||||
npminstall:
|
||||
# keep this in sync with setup.py!
|
||||
# keep this in sync with pretix/_build.py!
|
||||
mkdir -p pretix/static.dist/node_prefix/
|
||||
cp -r pretix/static/npm_dir/* pretix/static.dist/node_prefix/
|
||||
npm install --prefix=pretix/static.dist/node_prefix
|
||||
npm ci --prefix=pretix/static.dist/node_prefix
|
||||
|
||||
|
||||
@@ -19,4 +19,4 @@
|
||||
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
|
||||
# <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
__version__ = "2025.8.0.dev0"
|
||||
__version__ = "2025.8.1"
|
||||
|
||||
@@ -39,7 +39,7 @@ def npm_install():
|
||||
node_prefix = os.path.join(here, 'static.dist', 'node_prefix')
|
||||
os.makedirs(node_prefix, exist_ok=True)
|
||||
shutil.copytree(os.path.join(here, 'static', 'npm_dir'), node_prefix, dirs_exist_ok=True)
|
||||
subprocess.check_call('npm install', shell=True, cwd=node_prefix)
|
||||
subprocess.check_call('npm ci', shell=True, cwd=node_prefix)
|
||||
npm_installed = True
|
||||
|
||||
|
||||
|
||||
@@ -805,7 +805,6 @@ class EventSettingsSerializer(SettingsSerializer):
|
||||
'invoice_reissue_after_modify',
|
||||
'invoice_include_free',
|
||||
'invoice_generate',
|
||||
'invoice_period',
|
||||
'invoice_numbers_consecutive',
|
||||
'invoice_numbers_prefix',
|
||||
'invoice_numbers_prefix_cancellations',
|
||||
|
||||
@@ -1757,14 +1757,12 @@ class LinePositionField(serializers.IntegerField):
|
||||
|
||||
class InlineInvoiceLineSerializer(I18nAwareModelSerializer):
|
||||
position = LinePositionField(read_only=True)
|
||||
event_date_from = serializers.DateTimeField(read_only=True, source="period_start")
|
||||
event_date_to = serializers.DateTimeField(read_only=True, source="period_end")
|
||||
|
||||
class Meta:
|
||||
model = InvoiceLine
|
||||
fields = ('position', 'description', 'item', 'variation', 'subevent', 'attendee_name', 'event_date_from',
|
||||
'event_date_to', 'period_start', 'period_end', 'gross_value', 'tax_value', 'tax_rate', 'tax_code',
|
||||
'tax_name', 'fee_type', 'fee_internal_type', 'event_location')
|
||||
'event_date_to', 'gross_value', 'tax_value', 'tax_rate', 'tax_code', 'tax_name', 'fee_type',
|
||||
'fee_internal_type', 'event_location')
|
||||
|
||||
|
||||
class InvoiceSerializer(I18nAwareModelSerializer):
|
||||
|
||||
@@ -484,6 +484,7 @@ class OrganizerSettingsSerializer(SettingsSerializer):
|
||||
'reusable_media_type_nfc_mf0aes',
|
||||
'reusable_media_type_nfc_mf0aes_autocreate_giftcard',
|
||||
'reusable_media_type_nfc_mf0aes_autocreate_giftcard_currency',
|
||||
'reusable_media_type_nfc_mf0aes_random_uid',
|
||||
]
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
|
||||
@@ -546,7 +546,8 @@ class DeviceViewSet(mixins.CreateModelMixin,
|
||||
|
||||
|
||||
class OrganizerSettingsView(views.APIView):
|
||||
permission = 'can_change_organizer_settings'
|
||||
permission = None
|
||||
write_permission = 'can_change_organizer_settings'
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
s = OrganizerSettingsSerializer(instance=request.organizer.settings, organizer=request.organizer, context={
|
||||
|
||||
@@ -133,11 +133,11 @@ class TemplateBasedMailRenderer(BaseHTMLMailRenderer):
|
||||
def template_name(self):
|
||||
raise NotImplementedError()
|
||||
|
||||
def compile_markdown(self, plaintext):
|
||||
return markdown_compile_email(plaintext)
|
||||
def compile_markdown(self, plaintext, context=None):
|
||||
return markdown_compile_email(plaintext, context=context)
|
||||
|
||||
def render(self, plain_body: str, plain_signature: str, subject: str, order, position, context) -> str:
|
||||
body_md = self.compile_markdown(plain_body)
|
||||
body_md = self.compile_markdown(plain_body, context)
|
||||
if context:
|
||||
body_md = format_map(body_md, context=context, mode=SafeFormatter.MODE_RICH_TO_HTML)
|
||||
htmlctx = {
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
from django import forms
|
||||
from django.core.validators import RegexValidator
|
||||
from django.utils.translation import pgettext_lazy
|
||||
from django.utils.translation import pgettext, pgettext_lazy
|
||||
from django_countries.fields import Country
|
||||
from localflavor.it.forms import ITSocialSecurityNumberField
|
||||
|
||||
@@ -73,3 +73,12 @@ class ItalianSdITransmissionType(TransmissionType):
|
||||
if is_business:
|
||||
return base | {"company", "vat_id", "transmission_it_sdi_pec", "transmission_it_sdi_recipient_code"}
|
||||
return base | {"transmission_it_sdi_codice_fiscale"}
|
||||
|
||||
def pdf_info_text(self) -> str:
|
||||
# Watermark is not necessary as this is a usual precaution in Italy
|
||||
return pgettext(
|
||||
"italian_invoice",
|
||||
"This PDF document is a visual copy of the invoice and does not constitute an invoice for VAT "
|
||||
"purposes. The invoice is issued in XML format, transmitted in accordance with the procedures and terms "
|
||||
"set forth in No. 89757/2018 of April 30, 2018, issued by the Director of the Revenue Agency."
|
||||
)
|
||||
|
||||
@@ -19,8 +19,8 @@
|
||||
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
|
||||
# <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
import datetime
|
||||
import logging
|
||||
import math
|
||||
import re
|
||||
import unicodedata
|
||||
from collections import defaultdict
|
||||
@@ -224,6 +224,9 @@ class BaseReportlabInvoiceRenderer(BaseInvoiceRenderer):
|
||||
stylesheet.add(ParagraphStyle(name='FineprintHeading', fontName=self.font_bold, fontSize=8, leading=12))
|
||||
stylesheet.add(ParagraphStyle(name='Fineprint', fontName=self.font_regular, fontSize=8, leading=10))
|
||||
stylesheet.add(ParagraphStyle(name='FineprintRight', fontName=self.font_regular, fontSize=8, leading=10, alignment=TA_RIGHT))
|
||||
stylesheet.add(ParagraphStyle(name='WarningBlock', fontName=self.font_bold, fontSize=10, leading=12,
|
||||
alignment=TA_LEFT, borderWidth=1 * mm, borderColor=colors.black,
|
||||
borderPadding=2 * mm, spaceBefore=5 * mm, spaceAfter=5 * mm))
|
||||
return stylesheet
|
||||
|
||||
def _register_fonts(self):
|
||||
@@ -523,20 +526,6 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
textobject.textLine(self._normalize(self._upper(pgettext('invoice', 'Event'))))
|
||||
canvas.drawText(textobject)
|
||||
|
||||
def _date_range_in_header(self):
|
||||
if self.invoice.event.has_subevents or not self.invoice.event.settings.show_dates_on_frontpage:
|
||||
return None, None
|
||||
tz = self.invoice.event.timezone
|
||||
show_end_date = (
|
||||
self.invoice.event.settings.show_date_to and
|
||||
self.invoice.event.date_to and
|
||||
self.invoice.event.date_to.astimezone(tz).date() != self.invoice.event.date_from.astimezone(tz).date()
|
||||
)
|
||||
if show_end_date:
|
||||
return self.invoice.event.date_from.astimezone(tz).date(), self.invoice.event.date_to.astimezone(tz).date()
|
||||
else:
|
||||
return self.invoice.event.date_from.astimezone(tz).date(), None
|
||||
|
||||
def _draw_event(self, canvas):
|
||||
def shorten(txt):
|
||||
txt = str(txt)
|
||||
@@ -550,17 +539,25 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
p_size = p.wrap(self.event_width, self.event_height)
|
||||
return txt
|
||||
|
||||
d_from, d_to = self._date_range_in_header()
|
||||
if d_from and d_to:
|
||||
p_str = (
|
||||
shorten(self.invoice.event.name) + '\n' +
|
||||
pgettext('invoice', '{from_date}\nuntil {to_date}').format(
|
||||
from_date=date_format(d_from, "DATE_FORMAT"),
|
||||
to_date=date_format(d_to, "DATE_FORMAT"),
|
||||
)
|
||||
if not self.invoice.event.has_subevents and self.invoice.event.settings.show_dates_on_frontpage:
|
||||
tz = self.invoice.event.timezone
|
||||
show_end_date = (
|
||||
self.invoice.event.settings.show_date_to and
|
||||
self.invoice.event.date_to and
|
||||
self.invoice.event.date_to.astimezone(tz).date() != self.invoice.event.date_from.astimezone(tz).date()
|
||||
)
|
||||
elif d_from:
|
||||
p_str = shorten(self.invoice.event.name) + '\n' + date_format(d_from, "DATE_FORMAT")
|
||||
if show_end_date:
|
||||
p_str = (
|
||||
shorten(self.invoice.event.name) + '\n' +
|
||||
pgettext('invoice', '{from_date}\nuntil {to_date}').format(
|
||||
from_date=self.invoice.event.get_date_from_display(show_times=False),
|
||||
to_date=self.invoice.event.get_date_to_display(show_times=False)
|
||||
)
|
||||
)
|
||||
else:
|
||||
p_str = (
|
||||
shorten(self.invoice.event.name) + '\n' + self.invoice.event.get_date_from_display(show_times=False)
|
||||
)
|
||||
else:
|
||||
p_str = shorten(self.invoice.event.name)
|
||||
|
||||
@@ -583,11 +580,28 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
canvas.drawRightString(self.pagesize[0] - 20 * mm, (297 - 100) * mm, self._normalize(gettext('TEST MODE')))
|
||||
canvas.restoreState()
|
||||
|
||||
def _draw_watermark(self, canvas):
|
||||
watermark = self.invoice.transmission_type_instance.pdf_watermark()
|
||||
if watermark:
|
||||
canvas.saveState()
|
||||
for font_size in range(200, 20, -10):
|
||||
width = stringWidth(watermark, self.font_bold, font_size)
|
||||
if width < self.pagesize[0]:
|
||||
break
|
||||
|
||||
canvas.translate(self.pagesize[0] / 2, self.pagesize[1] / 2)
|
||||
canvas.rotate(math.atan(self.pagesize[1] / self.pagesize[0]) / math.pi * 180)
|
||||
canvas.setFont(self.font_bold, font_size)
|
||||
canvas.setFillColorRGB(.92, .92, .92)
|
||||
canvas.drawCentredString(0, - font_size / 2, self._normalize(watermark))
|
||||
canvas.restoreState()
|
||||
|
||||
def _on_first_page(self, canvas: Canvas, doc):
|
||||
canvas.setCreator('pretix.eu')
|
||||
canvas.setTitle(pgettext('invoice', 'Invoice {num}').format(num=self.invoice.number))
|
||||
|
||||
canvas.saveState()
|
||||
self._draw_watermark(canvas)
|
||||
self._draw_footer(canvas)
|
||||
self._draw_testmode(canvas)
|
||||
self._draw_invoice_from_label(canvas)
|
||||
@@ -617,6 +631,14 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
|
||||
def _get_intro(self):
|
||||
story = []
|
||||
|
||||
type_info_text = self.invoice.transmission_type_instance.pdf_info_text()
|
||||
if type_info_text:
|
||||
story.append(FontFallbackParagraph(
|
||||
type_info_text,
|
||||
self.stylesheet['WarningBlock']
|
||||
))
|
||||
|
||||
if self.invoice.custom_field:
|
||||
story.append(FontFallbackParagraph(
|
||||
'{}: {}'.format(
|
||||
@@ -664,12 +686,6 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
|
||||
def _get_story(self, doc):
|
||||
has_taxes = any(il.tax_value for il in self.invoice.lines.all()) or self.invoice.reverse_charge
|
||||
header_dates = self._date_range_in_header()
|
||||
tz = self.invoice.event.timezone
|
||||
has_multiple_service_dates = len(set(
|
||||
(il.period_start, il.period_end) for il in self.invoice.lines.all()
|
||||
)) > 1
|
||||
request_show_service_date = False
|
||||
|
||||
story = [
|
||||
NextPageTemplate('FirstPage'),
|
||||
@@ -713,73 +729,15 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
)]
|
||||
|
||||
def _group_key(line):
|
||||
return (line.description, line.tax_rate, line.tax_name, line.net_value, line.gross_value, line.subevent,
|
||||
line.period_start, line.period_end)
|
||||
|
||||
def day(dt: datetime.datetime) -> datetime.date:
|
||||
if dt is None:
|
||||
return None
|
||||
return dt.astimezone(tz).date()
|
||||
return (line.description, line.tax_rate, line.tax_name, line.net_value, line.gross_value, line.subevent_id,
|
||||
line.event_date_from, line.event_date_to)
|
||||
|
||||
total = Decimal('0.00')
|
||||
for (description, tax_rate, tax_name, net_value, gross_value, subevent, period_start, period_end), lines in addon_aware_groupby(
|
||||
for (description, tax_rate, tax_name, net_value, gross_value, *ignored), lines in addon_aware_groupby(
|
||||
self.invoice.lines.all(),
|
||||
key=_group_key,
|
||||
is_addon=lambda l: l.description.startswith(" +"),
|
||||
):
|
||||
# Try to be clever and figure out when organizers would want to show the period. This heuristic is
|
||||
# not perfect and the only "fully correct" way would be to include the period on every line always,
|
||||
# however this will cause confusion (a) due to useless repetition of the same date all over the invoice
|
||||
# (b) due to not respecting the show_date_to setting of events in cases where we could have respected it.
|
||||
# Still, we want to show the date explicitly if its different to the event or invoice date.
|
||||
if period_start and period_end and day(period_end) != day(period_start):
|
||||
# It's a multi-day period, such as the validity of the ticket or an event date period
|
||||
|
||||
if day(period_start) == header_dates[0] and day(period_end) == header_dates[1]:
|
||||
# This is the exact event period we already printed in the header, no need to repeat it.
|
||||
period_line = ""
|
||||
|
||||
elif (self.event.has_subevents and subevent and day(subevent.date_from) == day(period_start) and
|
||||
day(subevent.date_to) == day(period_end)):
|
||||
# For subevents, build_invoice already includes the date in the description in the event-default format.
|
||||
period_line = ""
|
||||
|
||||
else:
|
||||
period_line = f"{date_format(day(period_start), 'SHORT_DATE_FORMAT')} – {date_format(day(period_end), 'SHORT_DATE_FORMAT')}"
|
||||
|
||||
elif period_start or period_end:
|
||||
# It's a single-day period
|
||||
|
||||
delivery_day = day(period_end or period_start)
|
||||
if delivery_day in (header_dates[0], header_dates[1]):
|
||||
# This is the event date we already printed in the header, no need to repeat it.
|
||||
period_line = ""
|
||||
|
||||
elif self.event.has_subevents and subevent and delivery_day in (day(subevent.date_from), day(subevent.date_to)):
|
||||
# For subevents, build_invoice already includes the date in the description in the event-default format.
|
||||
period_line = ""
|
||||
|
||||
elif (delivery_day == self.invoice.date) and header_dates[0] is None:
|
||||
# This is a shop that doesn't show the date of the event in the header, and the period is the invoice
|
||||
# date. We assume that this is an 'everything is executed immediately' situation and do not want to
|
||||
# confuse with showing additional dates on the invoice. This is the case that is not guaranteed to be
|
||||
# correct in all cases and might need to change in the future. If customers have legal concerns, a
|
||||
# quick fix is including a sentence like "Delivery date is the invoice date unless otherwise indicated:"
|
||||
# in a custom text on the invoice.
|
||||
period_line = ""
|
||||
|
||||
else:
|
||||
period_line = date_format(delivery_day, 'SHORT_DATE_FORMAT')
|
||||
else:
|
||||
# No period known
|
||||
period_line = ""
|
||||
|
||||
if not has_multiple_service_dates and period_line:
|
||||
# Group together at the end of the invoice
|
||||
request_show_service_date = period_line
|
||||
else:
|
||||
description += "\n" + period_line
|
||||
|
||||
lines = list(lines)
|
||||
if has_taxes:
|
||||
if len(lines) > 1:
|
||||
@@ -788,7 +746,6 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
gross_price=money_filter(gross_value, self.invoice.event.currency),
|
||||
)
|
||||
description = description + "\n" + single_price_line
|
||||
|
||||
tdata.append((
|
||||
FontFallbackParagraph(
|
||||
self._clean_text(description, tags=['br']),
|
||||
@@ -893,12 +850,6 @@ class ClassicInvoiceRenderer(BaseReportlabInvoiceRenderer):
|
||||
|
||||
story.append(Spacer(1, 10 * mm))
|
||||
|
||||
if request_show_service_date:
|
||||
story.append(FontFallbackParagraph(
|
||||
self._normalize(pgettext('invoice', 'Invoice period: {daterange}').format(daterange=request_show_service_date)),
|
||||
self.stylesheet['Normal']
|
||||
))
|
||||
|
||||
if self.invoice.payment_provider_text:
|
||||
story.append(FontFallbackParagraph(
|
||||
self._normalize(self.invoice.payment_provider_text),
|
||||
|
||||
@@ -23,7 +23,7 @@ import re
|
||||
|
||||
from django import forms
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.utils.translation import gettext_lazy as _, pgettext
|
||||
from django_countries.fields import Country
|
||||
|
||||
from pretix.base.invoicing.transmission import (
|
||||
@@ -125,15 +125,15 @@ class PeppolIdValidator:
|
||||
|
||||
def __call__(self, value):
|
||||
if ":" not in value:
|
||||
raise ValidationError(_("A PEPPOL participant ID always starts with a prefix, followed by a colon (:)."))
|
||||
raise ValidationError(_("A Peppol participant ID always starts with a prefix, followed by a colon (:)."))
|
||||
|
||||
prefix, second = value.split(":", 1)
|
||||
if prefix not in self.regex_rules:
|
||||
raise ValidationError(_("The PEPPOL participant ID prefix %(number)s is not known to our system. Please "
|
||||
raise ValidationError(_("The Peppol participant ID prefix %(number)s is not known to our system. Please "
|
||||
"reach out to us if you are sure this ID is correct."), params={"number": prefix})
|
||||
|
||||
if not re.match(self.regex_rules[prefix], second):
|
||||
raise ValidationError(_("The PEPPOL participant ID does not match the validation rules for the prefix "
|
||||
raise ValidationError(_("The Peppol participant ID does not match the validation rules for the prefix "
|
||||
"%(number)s. Please reach out to us if you are sure this ID is correct."),
|
||||
params={"number": prefix})
|
||||
return value
|
||||
@@ -142,7 +142,7 @@ class PeppolIdValidator:
|
||||
@transmission_types.new()
|
||||
class PeppolTransmissionType(TransmissionType):
|
||||
identifier = "peppol"
|
||||
verbose_name = "PEPPOL"
|
||||
verbose_name = "Peppol"
|
||||
priority = 250
|
||||
enforce_transmission = True
|
||||
|
||||
@@ -153,7 +153,7 @@ class PeppolTransmissionType(TransmissionType):
|
||||
def invoice_address_form_fields(self) -> dict:
|
||||
return {
|
||||
"transmission_peppol_participant_id": forms.CharField(
|
||||
label=_("PEPPOL participant ID"),
|
||||
label=_("Peppol participant ID"),
|
||||
validators=[
|
||||
PeppolIdValidator(),
|
||||
]
|
||||
@@ -165,3 +165,13 @@ class PeppolTransmissionType(TransmissionType):
|
||||
"company", "street", "zipcode", "city", "country",
|
||||
}
|
||||
return base | {"transmission_peppol_participant_id"}
|
||||
|
||||
def pdf_watermark(self) -> str:
|
||||
return pgettext("peppol_invoice", "Visual copy")
|
||||
|
||||
def pdf_info_text(self) -> str:
|
||||
return pgettext(
|
||||
"peppol_invoice",
|
||||
"This PDF document is a visual copy of the invoice and does not constitute an invoice for VAT "
|
||||
"purposes. The original invoice is issued in XML format and transmitted through the Peppol network."
|
||||
)
|
||||
|
||||
@@ -104,6 +104,18 @@ class TransmissionType:
|
||||
def transmission_info_to_form_data(self, transmission_info: dict) -> dict:
|
||||
return transmission_info
|
||||
|
||||
def pdf_watermark(self) -> Optional[str]:
|
||||
"""
|
||||
Return a watermark that should be rendered across the PDF file.
|
||||
"""
|
||||
return None
|
||||
|
||||
def pdf_info_text(self) -> Optional[str]:
|
||||
"""
|
||||
Return an info text that should be rendered on the PDF file.
|
||||
"""
|
||||
return None
|
||||
|
||||
|
||||
class TransmissionProvider:
|
||||
"""
|
||||
|
||||
@@ -1,80 +0,0 @@
|
||||
# Generated by Django 4.2.17 on 2025-09-08 08:14
|
||||
from django.core.cache import cache
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
def set_invoice_period(apps, schema_editor):
|
||||
EventSettingsStore = apps.get_model("pretixbase", "Event_SettingsStore")
|
||||
ev_seen = set()
|
||||
insert_queue = []
|
||||
flush_queue = []
|
||||
|
||||
def store():
|
||||
EventSettingsStore.objects.bulk_create(
|
||||
insert_queue,
|
||||
update_conflicts=True,
|
||||
update_fields=["value"],
|
||||
unique_fields=["object", "key"],
|
||||
)
|
||||
for f in flush_queue:
|
||||
cache.delete(f)
|
||||
flush_queue.clear()
|
||||
insert_queue.clear()
|
||||
|
||||
# Existing events that use pretix-zugferd and have explicitly disabled delivery dates
|
||||
for setting in EventSettingsStore.objects.filter(key="zugferd_include_delivery_date", value="False"):
|
||||
flush_queue.append("hierarkey_{}_{}".format("event", setting.object_id))
|
||||
insert_queue.append(
|
||||
EventSettingsStore(
|
||||
object_id=setting.object_id,
|
||||
key="invoice_period",
|
||||
value="invoice_date",
|
||||
)
|
||||
)
|
||||
ev_seen.add(setting.object_id)
|
||||
|
||||
if len(insert_queue) > 1000:
|
||||
store()
|
||||
|
||||
# Existing events that previously hid their date on invoices
|
||||
for setting in EventSettingsStore.objects.filter(key="show_dates_on_frontpage", value="False"):
|
||||
if setting.object_id in ev_seen:
|
||||
continue
|
||||
|
||||
flush_queue.append("hierarkey_{}_{}".format("event", setting.object_id))
|
||||
insert_queue.append(
|
||||
EventSettingsStore(
|
||||
object_id=setting.object_id,
|
||||
key="invoice_period",
|
||||
value="auto_no_event",
|
||||
)
|
||||
)
|
||||
ev_seen.add(setting.object_id)
|
||||
|
||||
if len(insert_queue) > 1000:
|
||||
store()
|
||||
|
||||
store()
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("pretixbase", "0288_invoice_transmission"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameField(
|
||||
model_name="invoiceline",
|
||||
old_name="event_date_to",
|
||||
new_name="period_end",
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name="invoiceline",
|
||||
old_name="event_date_from",
|
||||
new_name="period_start",
|
||||
),
|
||||
migrations.RunPython(
|
||||
set_invoice_period,
|
||||
migrations.RunPython.noop,
|
||||
)
|
||||
]
|
||||
@@ -1,18 +0,0 @@
|
||||
# Generated by Django 4.2.17 on 2025-09-09 09:55
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("pretixbase", "0289_invoiceline_period"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="invoice",
|
||||
name="plugin_data",
|
||||
field=models.JSONField(default=dict),
|
||||
),
|
||||
]
|
||||
@@ -33,7 +33,6 @@
|
||||
# License for the specific language governing permissions and limitations under the License.
|
||||
|
||||
import string
|
||||
import warnings
|
||||
from decimal import Decimal
|
||||
|
||||
import pycountry
|
||||
@@ -43,6 +42,7 @@ from django.db.models.functions import Cast
|
||||
from django.utils import timezone
|
||||
from django.utils.crypto import get_random_string
|
||||
from django.utils.functional import cached_property
|
||||
from django.utils.timezone import now
|
||||
from django.utils.translation import gettext_lazy as _, pgettext
|
||||
from django_scopes import ScopedManager
|
||||
|
||||
@@ -201,7 +201,6 @@ class Invoice(models.Model):
|
||||
transmission_info = models.JSONField(null=True, blank=True)
|
||||
|
||||
file = models.FileField(null=True, blank=True, upload_to=invoice_filename, max_length=255)
|
||||
plugin_data = models.JSONField(default=dict)
|
||||
|
||||
objects = ScopedManager(organizer='event__organizer')
|
||||
|
||||
@@ -370,6 +369,22 @@ class Invoice(models.Model):
|
||||
from pretix.base.invoicing.transmission import transmission_types
|
||||
return transmission_types.get(identifier=self.transmission_type)[0]
|
||||
|
||||
def set_transmission_failed(self, provider, data):
|
||||
self.transmission_status = Invoice.TRANSMISSION_STATUS_FAILED
|
||||
self.transmission_date = now()
|
||||
if not self.transmission_provider and provider:
|
||||
self.transmission_provider = provider
|
||||
self.save(update_fields=["transmission_status", "transmission_date", "transmission_provider"])
|
||||
self.order.log_action(
|
||||
"pretix.event.order.invoice.sending_failed",
|
||||
data={
|
||||
"full_invoice_no": self.full_invoice_no,
|
||||
"transmission_provider": provider,
|
||||
"transmission_type": self.transmission_type,
|
||||
"data": data,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
class InvoiceLine(models.Model):
|
||||
"""
|
||||
@@ -389,10 +404,10 @@ class InvoiceLine(models.Model):
|
||||
:type tax_name: str
|
||||
:param subevent: The subevent this line refers to
|
||||
:type subevent: SubEvent
|
||||
:param period_start: Start if service period invoiced
|
||||
:type period_start: datetime
|
||||
:param period_end: End of service period invoiced
|
||||
:type period_end: datetime
|
||||
:param event_date_from: Event date of the (sub)event at the time the invoice was created
|
||||
:type event_date_from: datetime
|
||||
:param event_date_to: Event end date of the (sub)event at the time the invoice was created
|
||||
:type event_date_to: datetime
|
||||
:param event_location: Event location of the (sub)event at the time the invoice was created
|
||||
:type event_location: str
|
||||
:param item: The item this line refers to
|
||||
@@ -411,8 +426,8 @@ class InvoiceLine(models.Model):
|
||||
tax_name = models.CharField(max_length=190)
|
||||
tax_code = models.CharField(max_length=190, null=True, blank=True)
|
||||
subevent = models.ForeignKey('SubEvent', null=True, blank=True, on_delete=models.PROTECT)
|
||||
period_start = models.DateTimeField(null=True)
|
||||
period_end = models.DateTimeField(null=True)
|
||||
event_date_from = models.DateTimeField(null=True)
|
||||
event_date_to = models.DateTimeField(null=True)
|
||||
event_location = models.TextField(null=True, blank=True)
|
||||
item = models.ForeignKey('Item', null=True, blank=True, on_delete=models.PROTECT)
|
||||
variation = models.ForeignKey('ItemVariation', null=True, blank=True, on_delete=models.PROTECT)
|
||||
@@ -429,35 +444,3 @@ class InvoiceLine(models.Model):
|
||||
|
||||
def __str__(self):
|
||||
return 'Line {} of invoice {}'.format(self.position, self.invoice)
|
||||
|
||||
@property
|
||||
def event_date_from(self):
|
||||
warnings.warn(
|
||||
'InvoiceLine.event_date_from is deprecated, use period_start instead,',
|
||||
category=DeprecationWarning,
|
||||
)
|
||||
return self.period_start
|
||||
|
||||
@event_date_from.setter
|
||||
def event_date_from(self, value):
|
||||
warnings.warn(
|
||||
'InvoiceLine.event_date_from is deprecated, use period_start instead,',
|
||||
category=DeprecationWarning,
|
||||
)
|
||||
self.period_start = value
|
||||
|
||||
@property
|
||||
def event_date_to(self):
|
||||
warnings.warn(
|
||||
'InvoiceLine.event_date_to is deprecated, use period_end instead,',
|
||||
category=DeprecationWarning,
|
||||
)
|
||||
return self.period_end
|
||||
|
||||
@event_date_to.setter
|
||||
def event_date_to(self, value):
|
||||
warnings.warn(
|
||||
'InvoiceLine.event_date_to is deprecated, use period_end instead,',
|
||||
category=DeprecationWarning,
|
||||
)
|
||||
self.period_to = value
|
||||
|
||||
@@ -126,7 +126,7 @@ class Organizer(LoggedModel):
|
||||
self.settings.cookie_consent = True
|
||||
|
||||
plugins = [p for p in settings.PRETIX_PLUGINS_ORGANIZER_DEFAULT.split(",") if p]
|
||||
if plugins:
|
||||
if plugins and not self.get_plugins():
|
||||
self.set_active_plugins(plugins, allow_restricted=plugins)
|
||||
self.save()
|
||||
|
||||
|
||||
@@ -819,7 +819,7 @@ class Renderer:
|
||||
# and does not deal with our default value here properly
|
||||
content = op.secret
|
||||
else:
|
||||
content = self._get_text_content(op, order, o)
|
||||
content = self._get_text_content(op, order, o).strip()
|
||||
|
||||
if len(content) == 0:
|
||||
return
|
||||
|
||||
@@ -61,9 +61,7 @@ from pretix.base.models.tax import EU_CURRENCIES
|
||||
from pretix.base.services.tasks import (
|
||||
TransactionAwareProfiledEventTask, TransactionAwareTask,
|
||||
)
|
||||
from pretix.base.signals import (
|
||||
build_invoice_data, invoice_line_text, periodic_task,
|
||||
)
|
||||
from pretix.base.signals import invoice_line_text, periodic_task
|
||||
from pretix.celery_app import app
|
||||
from pretix.helpers.database import OF_SELF, rolledback_transaction
|
||||
from pretix.helpers.models import modelcopy
|
||||
@@ -84,10 +82,6 @@ def build_invoice(invoice: Invoice) -> Invoice:
|
||||
|
||||
lp = invoice.order.payments.last()
|
||||
|
||||
min_period_start = None
|
||||
max_period_end = None
|
||||
now_dt = now()
|
||||
|
||||
with (language(invoice.locale, invoice.event.settings.region)):
|
||||
invoice.invoice_from = invoice.event.settings.get('invoice_address_from')
|
||||
invoice.invoice_from_name = invoice.event.settings.get('invoice_address_from_name')
|
||||
@@ -214,9 +208,7 @@ def build_invoice(invoice: Invoice) -> Invoice:
|
||||
positions = list(
|
||||
invoice.order.positions.select_related('addon_to', 'item', 'tax_rule', 'subevent', 'variation').annotate(
|
||||
addon_c=Count('addons')
|
||||
).prefetch_related(
|
||||
'answers', 'answers__options', 'answers__question', 'granted_memberships',
|
||||
).order_by('positionid', 'id')
|
||||
).prefetch_related('answers', 'answers__options', 'answers__question').order_by('positionid', 'id')
|
||||
)
|
||||
|
||||
reverse_charge = False
|
||||
@@ -275,10 +267,6 @@ def build_invoice(invoice: Invoice) -> Invoice:
|
||||
location=_location_oneliner(location)
|
||||
)
|
||||
|
||||
period_start, period_end = _service_period_for_position(invoice, p, now_dt)
|
||||
min_period_start = min(min_period_start or period_start, period_start)
|
||||
max_period_end = min(max_period_end or period_end, period_end)
|
||||
|
||||
InvoiceLine.objects.create(
|
||||
position=i,
|
||||
invoice=invoice,
|
||||
@@ -289,8 +277,8 @@ def build_invoice(invoice: Invoice) -> Invoice:
|
||||
item=p.item,
|
||||
variation=p.variation,
|
||||
attendee_name=p.attendee_name if invoice.event.settings.invoice_attendee_name else None,
|
||||
period_start=period_start,
|
||||
period_end=period_end,
|
||||
event_date_from=p.subevent.date_from if invoice.event.has_subevents else invoice.event.date_from,
|
||||
event_date_to=p.subevent.date_to if invoice.event.has_subevents else invoice.event.date_to,
|
||||
event_location=location if invoice.event.settings.invoice_event_location else None,
|
||||
tax_rate=p.tax_rate,
|
||||
tax_code=p.tax_code,
|
||||
@@ -313,29 +301,13 @@ def build_invoice(invoice: Invoice) -> Invoice:
|
||||
fee_title = _(fee.get_fee_type_display())
|
||||
if fee.description:
|
||||
fee_title += " - " + fee.description
|
||||
|
||||
if min_period_start and max_period_end:
|
||||
# Consider fees to have the same service period as the products sold
|
||||
period_start = min_period_start
|
||||
period_end = max_period_end
|
||||
else:
|
||||
# Usually can only happen if everything except a cancellation fee is removed
|
||||
if invoice.event.settings.invoice_period in ("auto", "auto_no_event", "event_date") and not invoice.event.has_subevents:
|
||||
# Non-series event, let's be backwards-compatible and tag everything with the event period
|
||||
period_start = invoice.event.date_from
|
||||
period_end = invoice.event.date_to
|
||||
else:
|
||||
# We could try to work from the canceled positions, but it doesn't really make sense. A cancellation
|
||||
# fee is not "delivered" at the event date, it is rather effective right now.
|
||||
period_start = period_end = now()
|
||||
|
||||
InvoiceLine.objects.create(
|
||||
position=i + offset,
|
||||
invoice=invoice,
|
||||
description=fee_title,
|
||||
gross_value=fee.value,
|
||||
period_start=period_start,
|
||||
period_end=period_end,
|
||||
event_date_from=None if invoice.event.has_subevents else invoice.event.date_from,
|
||||
event_date_to=None if invoice.event.has_subevents else invoice.event.date_to,
|
||||
event_location=(
|
||||
None if invoice.event.has_subevents
|
||||
else (str(invoice.event.location)
|
||||
@@ -364,7 +336,6 @@ def build_invoice(invoice: Invoice) -> Invoice:
|
||||
invoice.reverse_charge = reverse_charge
|
||||
invoice.save()
|
||||
|
||||
build_invoice_data.send(sender=invoice.event, invoice=invoice)
|
||||
return invoice
|
||||
|
||||
|
||||
@@ -380,49 +351,6 @@ def build_cancellation(invoice: Invoice):
|
||||
return invoice
|
||||
|
||||
|
||||
def _service_period_for_position(invoice, position, invoice_dt):
|
||||
if invoice.event.settings.invoice_period in ("auto", "auto_no_event"):
|
||||
if position.valid_from or position.valid_until:
|
||||
period_start = position.valid_from or now()
|
||||
period_end = position.valid_until
|
||||
elif memberships := list(position.granted_memberships.all()):
|
||||
period_start = min(m.date_start for m in memberships)
|
||||
period_end = max(m.date_end for m in memberships)
|
||||
elif invoice.event.has_subevents:
|
||||
if position.subevent:
|
||||
period_start = position.subevent.date_from
|
||||
period_end = position.subevent.date_to
|
||||
else:
|
||||
# Currently impossible case, but might not be in the future and never makes
|
||||
# sense to use the event date here
|
||||
period_start = invoice_dt
|
||||
period_end = invoice_dt
|
||||
elif invoice.event.settings.invoice_period == "auto_no_event":
|
||||
period_start = invoice_dt
|
||||
period_end = invoice_dt
|
||||
else:
|
||||
period_start = invoice.event.date_from
|
||||
period_end = invoice.event.date_to
|
||||
elif invoice.event.settings.invoice_period == "order_date":
|
||||
period_start = invoice.order.datetime
|
||||
period_end = invoice.order.datetime
|
||||
elif invoice.event.settings.invoice_period == "event_date":
|
||||
if position.subevent:
|
||||
period_start = position.subevent.date_from
|
||||
period_end = position.subevent.date_to
|
||||
else:
|
||||
period_start = invoice.event.date_from
|
||||
period_end = invoice.event.date_to
|
||||
elif invoice.event.settings.invoice_period == "invoice_date":
|
||||
period_start = period_end = invoice_dt
|
||||
else:
|
||||
raise ValueError(f"Invalid invoice period setting '{invoice.event.settings.invoice_period}'")
|
||||
|
||||
if not period_end:
|
||||
period_end = period_start
|
||||
return period_start, period_end
|
||||
|
||||
|
||||
def generate_cancellation(invoice: Invoice, trigger_pdf=True):
|
||||
if invoice.canceled:
|
||||
raise ValueError("Invoice should not be canceled twice.")
|
||||
@@ -528,12 +456,6 @@ def build_preview_invoice_pdf(event):
|
||||
if not locale or locale == '__user__':
|
||||
locale = event.settings.locale
|
||||
|
||||
if event.settings.invoice_period in ("auto", "auto_no_event", "event_date"):
|
||||
period_start = event.date_from
|
||||
period_end = event.date_to or event.date_from
|
||||
else:
|
||||
period_start = period_end = timezone.now()
|
||||
|
||||
with rolledback_transaction(), language(locale, event.settings.region):
|
||||
order = event.orders.create(
|
||||
status=Order.STATUS_PENDING, datetime=timezone.now(),
|
||||
@@ -584,8 +506,8 @@ def build_preview_invoice_pdf(event):
|
||||
invoice=invoice, description=_("Sample product {}").format(i + 1),
|
||||
gross_value=tax.gross, tax_value=tax.tax,
|
||||
tax_rate=tax.rate, tax_name=tax.name, tax_code=tax.code,
|
||||
period_start=period_start,
|
||||
period_end=period_end,
|
||||
event_date_from=event.date_from,
|
||||
event_date_to=event.date_to,
|
||||
event_location=event.settings.invoice_event_location,
|
||||
)
|
||||
else:
|
||||
@@ -593,8 +515,8 @@ def build_preview_invoice_pdf(event):
|
||||
InvoiceLine.objects.create(
|
||||
invoice=invoice, description=_("Sample product A"),
|
||||
gross_value=100, tax_value=0, tax_rate=0, tax_code=None,
|
||||
period_start=period_start,
|
||||
period_end=period_end,
|
||||
event_date_from=event.date_from,
|
||||
event_date_to=event.date_to,
|
||||
event_location=event.settings.invoice_event_location,
|
||||
)
|
||||
|
||||
@@ -742,20 +664,7 @@ def transmit_invoice(sender, invoice_id, allow_retransmission=True, **kwargs):
|
||||
break
|
||||
|
||||
if not provider:
|
||||
invoice.transmission_status = Invoice.TRANSMISSION_STATUS_FAILED
|
||||
invoice.transmission_date = now()
|
||||
invoice.save(update_fields=["transmission_status", "transmission_date"])
|
||||
invoice.order.log_action(
|
||||
"pretix.event.order.invoice.sending_failed",
|
||||
data={
|
||||
"full_invoice_no": invoice.full_invoice_no,
|
||||
"transmission_provider": None,
|
||||
"transmission_type": invoice.transmission_type,
|
||||
"data": {
|
||||
"reason": "no_provider",
|
||||
},
|
||||
}
|
||||
)
|
||||
invoice.set_transmission_failed(provider=None, data={"reason": "no_provider"})
|
||||
return
|
||||
|
||||
if invoice.order.testmode and not provider.testmode_supported:
|
||||
@@ -776,18 +685,7 @@ def transmit_invoice(sender, invoice_id, allow_retransmission=True, **kwargs):
|
||||
provider.transmit(invoice)
|
||||
except Exception as e:
|
||||
logger.exception(f"Transmission of invoice {invoice.pk} failed with exception.")
|
||||
invoice.transmission_status = Invoice.TRANSMISSION_STATUS_FAILED
|
||||
invoice.transmission_date = now()
|
||||
invoice.save(update_fields=["transmission_status", "transmission_date"])
|
||||
invoice.order.log_action(
|
||||
"pretix.event.order.invoice.sending_failed",
|
||||
data={
|
||||
"full_invoice_no": invoice.full_invoice_no,
|
||||
"transmission_provider": None,
|
||||
"transmission_type": invoice.transmission_type,
|
||||
"data": {
|
||||
"reason": "exception",
|
||||
"exception": str(e),
|
||||
},
|
||||
}
|
||||
)
|
||||
invoice.set_transmission_failed(provider=provider.identifier, data={
|
||||
"reason": "exception",
|
||||
"exception": str(e),
|
||||
})
|
||||
|
||||
@@ -222,7 +222,7 @@ def mail(email: Union[str, Sequence[str]], subject: str, template: Union[str, La
|
||||
'invoice_company': ''
|
||||
})
|
||||
renderer = ClassicMailRenderer(None, organizer)
|
||||
content_plain = body_plain = render_mail(template, context)
|
||||
body_plain = render_mail(template, context, placeholder_mode=SafeFormatter.MODE_RICH_TO_PLAIN)
|
||||
subject = str(subject).format_map(TolerantDict(context))
|
||||
sender = (
|
||||
sender or
|
||||
@@ -316,6 +316,7 @@ def mail(email: Union[str, Sequence[str]], subject: str, template: Union[str, La
|
||||
|
||||
with override(timezone):
|
||||
try:
|
||||
content_plain = render_mail(template, context, placeholder_mode=None)
|
||||
if plain_text_only:
|
||||
body_html = None
|
||||
elif 'context' in inspect.signature(renderer.render).parameters:
|
||||
@@ -495,7 +496,7 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
|
||||
|
||||
email = email_filter.send_chained(event, 'message', message=email, order=order, user=user)
|
||||
|
||||
invoices_sent = []
|
||||
invoices_to_mark_transmitted = []
|
||||
if invoices:
|
||||
invoices = Invoice.objects.filter(pk__in=invoices)
|
||||
for inv in invoices:
|
||||
@@ -516,7 +517,23 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
|
||||
inv.file.file.read(),
|
||||
'application/pdf'
|
||||
)
|
||||
invoices_sent.append(inv)
|
||||
|
||||
if inv.transmission_type == "email":
|
||||
# Mark invoice as sent when it was sent to the requested address *either* at the time of
|
||||
# invoice creation *or* as of right now.
|
||||
expected_recipients = [
|
||||
(inv.invoice_to_transmission_info or {}).get("transmission_email_address")
|
||||
or inv.order.email,
|
||||
]
|
||||
try:
|
||||
expected_recipients.append(
|
||||
(inv.order.invoice_address.transmission_info or {}).get("transmission_email_address")
|
||||
or inv.order.email
|
||||
)
|
||||
except InvoiceAddress.DoesNotExist:
|
||||
pass
|
||||
if any(t in expected_recipients for t in to):
|
||||
invoices_to_mark_transmitted.append(inv)
|
||||
except:
|
||||
logger.exception('Could not attach invoice to email')
|
||||
pass
|
||||
@@ -589,6 +606,11 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
|
||||
'invoices': [],
|
||||
}
|
||||
)
|
||||
for i in invoices_to_mark_transmitted:
|
||||
i.set_transmission_failed(provider="email_pdf", data={
|
||||
"reason": "exception",
|
||||
"exception": "SMTP code {}, max retries exceeded".format(e.smtp_code),
|
||||
})
|
||||
raise e
|
||||
|
||||
logger.exception('Error sending email')
|
||||
@@ -602,6 +624,11 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
|
||||
'invoices': [],
|
||||
}
|
||||
)
|
||||
for i in invoices_to_mark_transmitted:
|
||||
i.set_transmission_failed(provider="email_pdf", data={
|
||||
"reason": "exception",
|
||||
"exception": "SMTP code {}".format(e.smtp_code),
|
||||
})
|
||||
|
||||
raise SendMailException('Failed to send an email to {}.'.format(to))
|
||||
except smtplib.SMTPRecipientsRefused as e:
|
||||
@@ -633,6 +660,11 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
|
||||
'invoices': [],
|
||||
}
|
||||
)
|
||||
for i in invoices_to_mark_transmitted:
|
||||
i.set_transmission_failed(provider="email_pdf", data={
|
||||
"reason": "exception",
|
||||
"exception": "SMTP error",
|
||||
})
|
||||
|
||||
raise SendMailException('Failed to send an email to {}.'.format(to))
|
||||
except Exception as e:
|
||||
@@ -650,6 +682,11 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
|
||||
'invoices': [],
|
||||
}
|
||||
)
|
||||
for i in invoices_to_mark_transmitted:
|
||||
i.set_transmission_failed(provider="email_pdf", data={
|
||||
"reason": "exception",
|
||||
"exception": "Internal error",
|
||||
})
|
||||
raise e
|
||||
if log_target:
|
||||
log_target.log_action(
|
||||
@@ -661,70 +698,63 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
|
||||
'invoices': [],
|
||||
}
|
||||
)
|
||||
for i in invoices_to_mark_transmitted:
|
||||
i.set_transmission_failed(provider="email_pdf", data={
|
||||
"reason": "exception",
|
||||
"exception": "Internal error",
|
||||
})
|
||||
logger.exception('Error sending email')
|
||||
raise SendMailException('Failed to send an email to {}.'.format(to))
|
||||
else:
|
||||
for i in invoices_sent:
|
||||
if i.transmission_type == "email":
|
||||
# Mark invoice as sent when it was sent to the requested address *either* at the time of invoice
|
||||
# creation *or* as of right now.
|
||||
expected_recipients = [
|
||||
(i.invoice_to_transmission_info or {}).get("transmission_email_address") or i.order.email,
|
||||
]
|
||||
try:
|
||||
expected_recipients.append((i.order.invoice_address.transmission_info or {}).get("transmission_email_address") or i.order.email)
|
||||
except InvoiceAddress.DoesNotExist:
|
||||
pass
|
||||
if not any(t in expected_recipients for t in to):
|
||||
continue
|
||||
if i.transmission_status != Invoice.TRANSMISSION_STATUS_COMPLETED:
|
||||
i.transmission_date = now()
|
||||
i.transmission_status = Invoice.TRANSMISSION_STATUS_COMPLETED
|
||||
i.transmission_provider = "email_pdf"
|
||||
i.transmission_info = {
|
||||
"sent": [
|
||||
{
|
||||
"recipients": to,
|
||||
"datetime": now().isoformat(),
|
||||
}
|
||||
]
|
||||
}
|
||||
i.save(update_fields=[
|
||||
"transmission_date", "transmission_provider", "transmission_status",
|
||||
"transmission_info"
|
||||
])
|
||||
elif i.transmission_provider == "email_pdf":
|
||||
i.transmission_info["sent"].append(
|
||||
for i in invoices_to_mark_transmitted:
|
||||
if i.transmission_status != Invoice.TRANSMISSION_STATUS_COMPLETED:
|
||||
i.transmission_date = now()
|
||||
i.transmission_status = Invoice.TRANSMISSION_STATUS_COMPLETED
|
||||
i.transmission_provider = "email_pdf"
|
||||
i.transmission_info = {
|
||||
"sent": [
|
||||
{
|
||||
"recipients": to,
|
||||
"datetime": now().isoformat(),
|
||||
}
|
||||
)
|
||||
i.save(update_fields=[
|
||||
"transmission_info"
|
||||
])
|
||||
i.order.log_action(
|
||||
"pretix.event.order.invoice.sent",
|
||||
data={
|
||||
"full_invoice_no": i.full_invoice_no,
|
||||
"transmission_provider": "email_pdf",
|
||||
"transmission_type": "email",
|
||||
"data": {
|
||||
"recipients": [to],
|
||||
},
|
||||
]
|
||||
}
|
||||
i.save(update_fields=[
|
||||
"transmission_date", "transmission_provider", "transmission_status",
|
||||
"transmission_info"
|
||||
])
|
||||
elif i.transmission_provider == "email_pdf":
|
||||
i.transmission_info["sent"].append(
|
||||
{
|
||||
"recipients": to,
|
||||
"datetime": now().isoformat(),
|
||||
}
|
||||
)
|
||||
i.save(update_fields=[
|
||||
"transmission_info"
|
||||
])
|
||||
i.order.log_action(
|
||||
"pretix.event.order.invoice.sent",
|
||||
data={
|
||||
"full_invoice_no": i.full_invoice_no,
|
||||
"transmission_provider": "email_pdf",
|
||||
"transmission_type": "email",
|
||||
"data": {
|
||||
"recipients": [to],
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
def mail_send(*args, **kwargs):
|
||||
mail_send_task.apply_async(args=args, kwargs=kwargs)
|
||||
|
||||
|
||||
def render_mail(template, context):
|
||||
def render_mail(template, context, placeholder_mode=SafeFormatter.MODE_RICH_TO_PLAIN):
|
||||
if isinstance(template, LazyI18nString):
|
||||
body = str(template)
|
||||
if context:
|
||||
body = format_map(body, context, mode=SafeFormatter.MODE_IGNORE_RICH)
|
||||
if context and placeholder_mode:
|
||||
body = format_map(body, context, mode=placeholder_mode)
|
||||
else:
|
||||
tpl = get_template(template)
|
||||
body = tpl.render(context)
|
||||
|
||||
@@ -26,7 +26,7 @@ from decimal import Decimal
|
||||
|
||||
from django.dispatch import receiver
|
||||
from django.utils.formats import date_format
|
||||
from django.utils.html import escape
|
||||
from django.utils.html import escape, mark_safe
|
||||
from django.utils.timezone import now
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
@@ -123,6 +123,10 @@ class BaseRichTextPlaceholder(BaseTextPlaceholder):
|
||||
def identifier(self):
|
||||
return self._identifier
|
||||
|
||||
@property
|
||||
def allowed_in_plain_content(self):
|
||||
return False
|
||||
|
||||
@property
|
||||
def required_context(self):
|
||||
return self._args
|
||||
@@ -194,6 +198,33 @@ class SimpleButtonPlaceholder(BaseRichTextPlaceholder):
|
||||
return f'{text}: {url}'
|
||||
|
||||
|
||||
class MarkdownTextPlaceholder(BaseRichTextPlaceholder):
|
||||
def __init__(self, identifier, args, func, sample, inline):
|
||||
super().__init__(identifier, args)
|
||||
self._func = func
|
||||
self._sample = sample
|
||||
self._snippet = inline
|
||||
|
||||
@property
|
||||
def allowed_in_plain_content(self):
|
||||
return self._snippet
|
||||
|
||||
def render_plain(self, **context):
|
||||
return self._func(**{k: context[k] for k in self._args})
|
||||
|
||||
def render_html(self, **context):
|
||||
return mark_safe(markdown_compile_email(self.render_plain(**context), snippet=self._snippet))
|
||||
|
||||
def render_sample_plain(self, event):
|
||||
if callable(self._sample):
|
||||
return self._sample(event)
|
||||
else:
|
||||
return self._sample
|
||||
|
||||
def render_sample_html(self, event):
|
||||
return mark_safe(markdown_compile_email(self.render_sample_plain(event), snippet=self._snippet))
|
||||
|
||||
|
||||
class PlaceholderContext(SafeFormatter):
|
||||
"""
|
||||
Holds the contextual arguments and corresponding list of available placeholders for formatting
|
||||
@@ -574,7 +605,7 @@ def base_placeholders(sender, **kwargs):
|
||||
'invoice_company', ['invoice_address'], lambda invoice_address: invoice_address.company or '',
|
||||
_('Sample Corporation')
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
MarkdownTextPlaceholder(
|
||||
'orders', ['event', 'orders'], lambda event, orders: '\n' + '\n\n'.join(
|
||||
'* {} - {}'.format(
|
||||
order.full_code,
|
||||
@@ -604,6 +635,7 @@ def base_placeholders(sender, **kwargs):
|
||||
{'code': 'OPKSB', 'secret': '09pjdksflosk3njd', 'hash': 'stuvwxy2z'}
|
||||
]
|
||||
),
|
||||
inline=False,
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
'hours', ['event', 'waiting_list_entry'], lambda event, waiting_list_entry:
|
||||
@@ -618,12 +650,13 @@ def base_placeholders(sender, **kwargs):
|
||||
'code', ['waiting_list_voucher'], lambda waiting_list_voucher: waiting_list_voucher.code,
|
||||
'68CYU2H6ZTP3WLK5'
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
MarkdownTextPlaceholder(
|
||||
# join vouchers with two spaces at end of line so markdown-parser inserts a <br>
|
||||
'voucher_list', ['voucher_list'], lambda voucher_list: ' \n'.join(voucher_list),
|
||||
' 68CYU2H6ZTP3WLK5\n 7MB94KKPVEPSMVF2'
|
||||
'68CYU2H6ZTP3WLK5 \n7MB94KKPVEPSMVF2',
|
||||
inline=False,
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
MarkdownTextPlaceholder(
|
||||
# join vouchers with two spaces at end of line so markdown-parser inserts a <br>
|
||||
'voucher_url_list', ['event', 'voucher_list'],
|
||||
lambda event, voucher_list: ' \n'.join([
|
||||
@@ -638,6 +671,7 @@ def base_placeholders(sender, **kwargs):
|
||||
) + '?voucher=' + c
|
||||
for c in ['68CYU2H6ZTP3WLK5', '7MB94KKPVEPSMVF2']
|
||||
]),
|
||||
inline=False,
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
'url', ['event', 'voucher_list'], lambda event, voucher_list: build_absolute_uri(event, 'presale:event.index', kwargs={
|
||||
@@ -656,13 +690,13 @@ def base_placeholders(sender, **kwargs):
|
||||
'comment', ['comment'], lambda comment: comment,
|
||||
_('An individual text with a reason can be inserted here.'),
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
MarkdownTextPlaceholder(
|
||||
'payment_info', ['order', 'payments'], _placeholder_payments,
|
||||
_('The amount has been charged to your card.'),
|
||||
_('The amount has been charged to your card.'), inline=False,
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
MarkdownTextPlaceholder(
|
||||
'payment_info', ['payment_info'], lambda payment_info: payment_info,
|
||||
_('Please transfer money to this bank account: 9999-9999-9999-9999'),
|
||||
_('Please transfer money to this bank account: 9999-9999-9999-9999'), inline=False,
|
||||
),
|
||||
SimpleFunctionalTextPlaceholder(
|
||||
'attendee_name', ['position'], lambda position: position.attendee_name,
|
||||
@@ -719,13 +753,13 @@ def base_placeholders(sender, **kwargs):
|
||||
))
|
||||
|
||||
for k, v in sender.meta_data.items():
|
||||
ph.append(SimpleFunctionalTextPlaceholder(
|
||||
ph.append(MarkdownTextPlaceholder(
|
||||
'meta_%s' % k, ['event'], lambda event, k=k: event.meta_data[k],
|
||||
v
|
||||
v, inline=True,
|
||||
))
|
||||
ph.append(SimpleFunctionalTextPlaceholder(
|
||||
ph.append(MarkdownTextPlaceholder(
|
||||
'meta_%s' % k, ['event_or_subevent'], lambda event_or_subevent, k=k: event_or_subevent.meta_data[k],
|
||||
v
|
||||
v, inline=True,
|
||||
))
|
||||
|
||||
return ph
|
||||
@@ -753,7 +787,7 @@ def get_available_placeholders(event, base_parameters, rich=False):
|
||||
if not isinstance(val, (list, tuple)):
|
||||
val = [val]
|
||||
for v in val:
|
||||
if isinstance(v, BaseRichTextPlaceholder) and not rich:
|
||||
if isinstance(v, BaseRichTextPlaceholder) and not rich and not v.allowed_in_plain_content:
|
||||
continue
|
||||
if all(rp in base_parameters for rp in v.required_context):
|
||||
params[v.identifier] = v
|
||||
@@ -775,13 +809,13 @@ def get_sample_context(event, context_parameters, rich=True):
|
||||
)
|
||||
)
|
||||
elif str(sample).strip().startswith('* ') or str(sample).startswith(' '):
|
||||
context_dict[k] = '<div class="placeholder" title="{}">{}</div>'.format(
|
||||
context_dict[k] = mark_safe('<div class="placeholder" title="{}">{}</div>'.format(
|
||||
lbl,
|
||||
markdown_compile_email(str(sample))
|
||||
)
|
||||
))
|
||||
else:
|
||||
context_dict[k] = '<span class="placeholder" title="{}">{}</span>'.format(
|
||||
context_dict[k] = mark_safe('<span class="placeholder" title="{}">{}</span>'.format(
|
||||
lbl,
|
||||
escape(sample)
|
||||
)
|
||||
))
|
||||
return context_dict
|
||||
|
||||
@@ -69,9 +69,6 @@ def generate_order(order: int, provider: str):
|
||||
prov = response(order.event)
|
||||
if prov.identifier == provider:
|
||||
filename, ttype, data = prov.generate_order(order)
|
||||
if ttype == 'text/uri-list':
|
||||
continue
|
||||
|
||||
path, ext = os.path.splitext(filename)
|
||||
for ct in CachedCombinedTicket.objects.filter(order=order, provider=provider):
|
||||
ct.delete()
|
||||
|
||||
@@ -1098,35 +1098,6 @@ DEFAULTS = {
|
||||
help_text=_("Invoices will never be automatically generated for free orders.")
|
||||
)
|
||||
},
|
||||
'invoice_period': {
|
||||
'default': 'auto',
|
||||
'type': str,
|
||||
'form_class': forms.ChoiceField,
|
||||
'serializer_class': serializers.ChoiceField,
|
||||
'serializer_kwargs': dict(
|
||||
choices=(
|
||||
('auto', _('Automatic based on ticket-specific validity, membership validity, event series date, or event date)')),
|
||||
('auto_no_event', _('Automatic, but prefer invoice date over event date')),
|
||||
('event_date', _('Event date')),
|
||||
('order_date', _('Order date')),
|
||||
('invoice_date', _('Invoice date')),
|
||||
),
|
||||
),
|
||||
'form_kwargs': dict(
|
||||
label=_("Date of service"),
|
||||
widget=forms.RadioSelect,
|
||||
choices=(
|
||||
('auto', _('Automatic based on ticket-specific validity, membership validity, event series date, or event date)')),
|
||||
('auto_no_event', _('Automatic, but prefer invoice date over event date')),
|
||||
('event_date', _('Event date')),
|
||||
('order_date', _('Order date')),
|
||||
('invoice_date', _('Invoice date')),
|
||||
),
|
||||
help_text=_("This controls what dates are shown on the invoice, but is especially important for "
|
||||
"electronic invoicing."),
|
||||
required=True,
|
||||
)
|
||||
},
|
||||
'invoice_reissue_after_modify': {
|
||||
'default': 'False',
|
||||
'type': bool,
|
||||
|
||||
@@ -596,18 +596,6 @@ multiple events. Receivers should return a subclass of pretix.base.exporter.Base
|
||||
The ``sender`` keyword argument will contain an organizer.
|
||||
"""
|
||||
|
||||
build_invoice_data = EventPluginSignal()
|
||||
"""
|
||||
Arguments: ``invoice``
|
||||
|
||||
This signal is sent out every time an invoice is built, after the invoice model was created
|
||||
and filled and before the PDF generation task is started. You can use this to make changes
|
||||
to the invoice, but we recommend to mostly use it to add content to ``Invoice.plugin_data``.
|
||||
You are responsible for saving any changes to the database.
|
||||
|
||||
As with all event-plugin signals, the ``sender`` keyword argument will contain the event.
|
||||
"""
|
||||
|
||||
validate_order = EventPluginSignal()
|
||||
"""
|
||||
Arguments: ``payments``, ``positions``, ``email``, ``locale``, ``invoice_address``,
|
||||
|
||||
@@ -44,6 +44,7 @@ from django.conf import settings
|
||||
from django.core import signing
|
||||
from django.urls import reverse
|
||||
from django.utils.functional import SimpleLazyObject
|
||||
from django.utils.html import escape
|
||||
from django.utils.http import url_has_allowed_host_and_scheme
|
||||
from django.utils.safestring import mark_safe
|
||||
from markdown import Extension
|
||||
@@ -52,6 +53,8 @@ from markdown.postprocessors import Postprocessor
|
||||
from markdown.treeprocessors import UnescapeTreeprocessor
|
||||
from tlds import tld_set
|
||||
|
||||
from pretix.helpers.format import SafeFormatter, format_map
|
||||
|
||||
register = template.Library()
|
||||
|
||||
ALLOWED_TAGS_SNIPPET = {
|
||||
@@ -294,27 +297,44 @@ class LinkifyAndCleanExtension(Extension):
|
||||
)
|
||||
|
||||
|
||||
def markdown_compile_email(source, allowed_tags=ALLOWED_TAGS, allowed_attributes=ALLOWED_ATTRIBUTES):
|
||||
def markdown_compile_email(source, allowed_tags=None, allowed_attributes=ALLOWED_ATTRIBUTES, snippet=False, context=None):
|
||||
if allowed_tags is None:
|
||||
allowed_tags = ALLOWED_TAGS_SNIPPET if snippet else ALLOWED_TAGS
|
||||
|
||||
context_callbacks = []
|
||||
if context:
|
||||
# This is a workaround to fix placeholders in URL targets
|
||||
def context_callback(attrs, new=False):
|
||||
if (None, "href") in attrs and "{" in attrs[None, "href"]:
|
||||
# Do not use MODE_RICH_TO_HTML to avoid recursive linkification
|
||||
attrs[None, "href"] = escape(format_map(attrs[None, "href"], context=context, mode=SafeFormatter.MODE_RICH_TO_PLAIN))
|
||||
return attrs
|
||||
|
||||
context_callbacks.append(context_callback)
|
||||
|
||||
linker = bleach.Linker(
|
||||
url_re=URL_RE,
|
||||
email_re=EMAIL_RE,
|
||||
callbacks=DEFAULT_CALLBACKS + [truelink_callback, abslink_callback],
|
||||
callbacks=context_callbacks + DEFAULT_CALLBACKS + [truelink_callback, abslink_callback],
|
||||
parse_email=True
|
||||
)
|
||||
exts = [
|
||||
'markdown.extensions.sane_lists',
|
||||
'markdown.extensions.tables',
|
||||
EmailNl2BrExtension(),
|
||||
LinkifyAndCleanExtension(
|
||||
linker,
|
||||
tags=set(allowed_tags),
|
||||
attributes=allowed_attributes,
|
||||
protocols=ALLOWED_PROTOCOLS,
|
||||
strip=snippet,
|
||||
)
|
||||
]
|
||||
if snippet:
|
||||
exts.append(SnippetExtension())
|
||||
return markdown.markdown(
|
||||
source,
|
||||
extensions=[
|
||||
'markdown.extensions.sane_lists',
|
||||
'markdown.extensions.tables',
|
||||
EmailNl2BrExtension(),
|
||||
LinkifyAndCleanExtension(
|
||||
linker,
|
||||
tags=set(allowed_tags),
|
||||
attributes=allowed_attributes,
|
||||
protocols=ALLOWED_PROTOCOLS,
|
||||
strip=False,
|
||||
)
|
||||
]
|
||||
extensions=exts
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -857,7 +857,6 @@ class InvoiceSettingsForm(EventSettingsValidationMixin, SettingsForm):
|
||||
'invoice_show_payments',
|
||||
'invoice_reissue_after_modify',
|
||||
'invoice_generate',
|
||||
'invoice_period',
|
||||
'invoice_attendee_name',
|
||||
'invoice_event_location',
|
||||
'invoice_include_expire_date',
|
||||
|
||||
@@ -67,7 +67,8 @@ class RRuleForm(forms.Form):
|
||||
)
|
||||
count = forms.IntegerField(
|
||||
label=_('Number of repetitions'),
|
||||
initial=10
|
||||
initial=10,
|
||||
min_value=1,
|
||||
)
|
||||
until = forms.DateField(
|
||||
widget=forms.DateInput(
|
||||
|
||||
@@ -236,7 +236,7 @@ class VoucherForm(I18nModelForm):
|
||||
try:
|
||||
Voucher.clean_max_usages(data, self.instance.redeemed)
|
||||
except ValidationError as e:
|
||||
raise ValidationError({"max_usages": e.message})
|
||||
raise ValidationError({"max_usages": e})
|
||||
check_quota = Voucher.clean_quota_needs_checking(
|
||||
data, self.initial_instance_data,
|
||||
item_changed=data.get('itemvar') != self.initial.get('itemvar'),
|
||||
@@ -308,8 +308,8 @@ class VoucherBulkForm(VoucherForm):
|
||||
)
|
||||
Recipient = namedtuple('Recipient', 'email number name tag')
|
||||
|
||||
def _set_field_placeholders(self, fn, base_parameters):
|
||||
placeholders = get_available_placeholders(self.instance.event, base_parameters)
|
||||
def _set_field_placeholders(self, fn, base_parameters, rich=False):
|
||||
placeholders = get_available_placeholders(self.instance.event, base_parameters, rich=rich)
|
||||
ht = format_placeholders_help_text(placeholders, self.instance.event)
|
||||
|
||||
if self.fields[fn].help_text:
|
||||
@@ -345,7 +345,7 @@ class VoucherBulkForm(VoucherForm):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
self._set_field_placeholders('send_subject', ['event', 'name'])
|
||||
self._set_field_placeholders('send_message', ['event', 'voucher_list', 'name'])
|
||||
self._set_field_placeholders('send_message', ['event', 'voucher_list', 'name'], rich=True)
|
||||
|
||||
with language(self.instance.event.settings.locale, self.instance.event.settings.region):
|
||||
for f in ("send_subject", "send_message"):
|
||||
|
||||
@@ -581,7 +581,7 @@ class CoreOrderLogEntryType(OrderLogEntryType):
|
||||
'The voucher has been set to expire because the recipient removed themselves from the waiting list.'),
|
||||
'pretix.voucher.changed': _('The voucher has been changed.'),
|
||||
'pretix.voucher.deleted': _('The voucher has been deleted.'),
|
||||
'pretix.voucher.added.waitinglist': _('The voucher has been sent to {email} through the waiting list.'),
|
||||
'pretix.voucher.added.waitinglist': _('The voucher has been assigned to {email} through the waiting list.'),
|
||||
})
|
||||
class CoreVoucherLogEntryType(VoucherLogEntryType):
|
||||
pass
|
||||
|
||||
@@ -310,9 +310,13 @@ an instance of a form class that you bind yourself when appropriate. Your form w
|
||||
as part of the standard validation and rendering cycle and rendered using default bootstrap
|
||||
styles. It is advisable to set a prefix for your form to avoid clashes with other plugins.
|
||||
|
||||
Your forms may also have two special properties: ``template`` with a template that will be
|
||||
included to render the form, and ``title``, which will be used as a headline. Your template
|
||||
will be passed a ``form`` variable with your form.
|
||||
Your forms may also have special properties:
|
||||
|
||||
- ``template`` with a template that will be included to render the form. Your template will be passed a ``form``
|
||||
variable with your form.
|
||||
- ``title``, which will be used as a headline.
|
||||
- ``ìs_layouts = True``, if your form should be grouped with the ticket layout settings (mutually exclusive with setting ``title``).
|
||||
- ``group_with_formset = True``, if your form should be grouped with a formset of the same ``title``
|
||||
|
||||
As with all event plugin signals, the ``sender`` keyword argument will contain the event.
|
||||
"""
|
||||
|
||||
@@ -15,19 +15,6 @@
|
||||
{% bootstrap_field form.invoice_email_attachment layout="control" %}
|
||||
{% bootstrap_field form.invoice_email_organizer layout="control" %}
|
||||
{% bootstrap_field form.invoice_language layout="control" %}
|
||||
{% bootstrap_field form.invoice_period layout="control" %}
|
||||
|
||||
{% if not request.event.settings.show_dates_on_frontpage %}
|
||||
<div data-display-dependency="input[name=invoice_period][value=auto],input[name=invoice_period][value=event_date]">
|
||||
<div class="alert alert-warning dynamic">
|
||||
{% blocktrans trimmed %}
|
||||
You configured that your shop is not an event and the event date should not be shown.
|
||||
Therefore, we recommend that you set the date of service to a different option.
|
||||
{% endblocktrans %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% bootstrap_field form.invoice_include_free layout="control" %}
|
||||
{% bootstrap_field form.invoice_show_payments layout="control" %}
|
||||
{% bootstrap_field form.invoice_reissue_after_modify layout="control" %}
|
||||
|
||||
@@ -177,6 +177,18 @@
|
||||
{% for v in formsets.values %}
|
||||
<fieldset>
|
||||
<legend>{{ v.title }}</legend>
|
||||
|
||||
{% for f in plugin_forms %}
|
||||
{% if f.group_with_formset and f.title == v.title %}
|
||||
{% if f.template and not "template" in f.fields %}
|
||||
{% include f.template with form=f %}
|
||||
{% else %}
|
||||
{% bootstrap_form f layout="control" %}
|
||||
{% endif %}
|
||||
<hr />
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
{% include v.template with formset=v %}
|
||||
</fieldset>
|
||||
{% endfor %}
|
||||
@@ -276,7 +288,7 @@
|
||||
{% endfor %}
|
||||
</fieldset>
|
||||
{% for f in plugin_forms %}
|
||||
{% if not f.is_layouts and f.title %}
|
||||
{% if not f.is_layouts and not f.group_with_formset and f.title %}
|
||||
<fieldset>
|
||||
<legend>{{ f.title }}</legend>
|
||||
{% if f.template and not "template" in f.fields %}
|
||||
|
||||
@@ -238,7 +238,7 @@
|
||||
<div class="row control-group pdf-info">
|
||||
<div class="col-sm-12">
|
||||
<label for="pdf-info-name">{% trans "Layout name" %}</label><br>
|
||||
<input type="text" id="pdf-info-name" class="input-block-level form-control" name="name" value="{{ name }}">
|
||||
<input type="text" id="pdf-info-name" class="input-block-level form-control" name="name" value="{{ name }}" maxlength="190">
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
@@ -711,11 +711,15 @@ class OrderDownload(AsyncAction, OrderView):
|
||||
)
|
||||
return resp
|
||||
elif isinstance(value, CachedCombinedTicket):
|
||||
resp = FileResponse(value.file.file, content_type=value.type)
|
||||
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
|
||||
self.request.event.slug.upper(), self.order.code, self.output.identifier, value.extension
|
||||
)
|
||||
return resp
|
||||
if value.type == 'text/uri-list':
|
||||
resp = HttpResponseRedirect(value.file.file.read())
|
||||
return resp
|
||||
else:
|
||||
resp = FileResponse(value.file.file, content_type=value.type)
|
||||
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
|
||||
self.request.event.slug.upper(), self.order.code, self.output.identifier, value.extension
|
||||
)
|
||||
return resp
|
||||
else:
|
||||
return redirect(self.get_self_url())
|
||||
|
||||
@@ -2832,11 +2836,23 @@ class ExportView(EventPermissionRequiredMixin, ExportMixin, ListView):
|
||||
def get_queryset(self):
|
||||
return self.get_scheduled_queryset()
|
||||
|
||||
def has_permission(self):
|
||||
return self.request.user.has_event_permission(self.request.organizer, self.request.event, "can_view_orders")
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
ctx = super().get_context_data(**kwargs)
|
||||
if "schedule" in self.request.POST or self.scheduled:
|
||||
ctx['schedule_form'] = self.schedule_form
|
||||
ctx['rrule_form'] = self.rrule_form
|
||||
if "schedule" in self.request.POST and not self.has_permission():
|
||||
messages.error(
|
||||
self.request,
|
||||
_(
|
||||
"Your user account does not have sufficient permission to run this report, therefore "
|
||||
"you cannot schedule it."
|
||||
)
|
||||
)
|
||||
else:
|
||||
ctx['schedule_form'] = self.schedule_form
|
||||
ctx['rrule_form'] = self.rrule_form
|
||||
elif not self.exporter:
|
||||
for s in ctx['scheduled']:
|
||||
try:
|
||||
|
||||
@@ -2189,11 +2189,28 @@ class ExportView(OrganizerPermissionRequiredMixin, ExportMixin, ListView):
|
||||
def get_queryset(self):
|
||||
return self.get_scheduled_queryset()
|
||||
|
||||
def has_permission(self):
|
||||
if isinstance(self.exporter, OrganizerLevelExportMixin):
|
||||
if not self.request.user.has_organizer_permission(self.request.organizer, self.exporter.organizer_required_permission):
|
||||
return False
|
||||
if self.exporter and not self.exporter.available_for_user(self.request.user):
|
||||
return False
|
||||
return True
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
ctx = super().get_context_data(**kwargs)
|
||||
if "schedule" in self.request.POST or self.scheduled:
|
||||
ctx['schedule_form'] = self.schedule_form
|
||||
ctx['rrule_form'] = self.rrule_form
|
||||
if "schedule" in self.request.POST and not self.has_permission():
|
||||
messages.error(
|
||||
self.request,
|
||||
_(
|
||||
"Your user account does not have sufficient permission to run this report, therefore "
|
||||
"you cannot schedule it."
|
||||
)
|
||||
)
|
||||
else:
|
||||
ctx['schedule_form'] = self.schedule_form
|
||||
ctx['rrule_form'] = self.rrule_form
|
||||
elif not self.exporter:
|
||||
for s in ctx['scheduled']:
|
||||
try:
|
||||
|
||||
@@ -710,9 +710,9 @@ class UserNotificationsEditView(TemplateView):
|
||||
|
||||
messages.success(request, _('Your notification settings have been saved.'))
|
||||
if request.user.notifications_send:
|
||||
self.request.user.log_action('pretix.user.settings.notifications.disabled', user=self.request.user)
|
||||
else:
|
||||
self.request.user.log_action('pretix.user.settings.notifications.enabled', user=self.request.user)
|
||||
else:
|
||||
self.request.user.log_action('pretix.user.settings.notifications.disabled', user=self.request.user)
|
||||
return redirect(
|
||||
reverse('control:user.settings.notifications') +
|
||||
('?event={}'.format(self.event.pk) if self.event else '')
|
||||
|
||||
@@ -64,6 +64,16 @@ def daterange(df, dt, as_html=False):
|
||||
return format_html(base_format, _date(df, "j."), mark_safe(until.strip()), _date(dt, "j. F Y"))
|
||||
elif df.year == dt.year:
|
||||
return format_html(base_format, _date(df, "j. F"), until, _date(dt, "j. F Y"))
|
||||
elif lng == "en-nz":
|
||||
if df.year == dt.year and df.month == dt.month and df.day == dt.day:
|
||||
# Mon, 15 January 2024
|
||||
return format_html(base_format, _date(df, "D, j F Y"))
|
||||
elif df.year == dt.year and df.month == dt.month:
|
||||
# 1 – 3 January 2024
|
||||
return format_html(base_format, _date(df, "j"), until, _date(dt, "j F Y"))
|
||||
elif df.year == dt.year:
|
||||
# 1 January – 3 April 2024
|
||||
return format_html(base_format, _date(df, "j F"), until, _date(dt, "j F Y"))
|
||||
elif lng.startswith("en"):
|
||||
if df.year == dt.year and df.month == dt.month and df.day == dt.day:
|
||||
return format_html(base_format, _date(df, "D, N jS, Y"))
|
||||
|
||||
@@ -22,6 +22,8 @@
|
||||
import logging
|
||||
from string import Formatter
|
||||
|
||||
from django.utils.html import conditional_escape
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@@ -40,11 +42,10 @@ class SafeFormatter(Formatter):
|
||||
Customized version of ``str.format`` that (a) behaves just like ``str.format_map`` and
|
||||
(b) does not allow any unwanted shenanigans like attribute access or format specifiers.
|
||||
"""
|
||||
MODE_IGNORE_RICH = 0
|
||||
MODE_RICH_TO_PLAIN = 1
|
||||
MODE_RICH_TO_HTML = 2
|
||||
|
||||
def __init__(self, context, raise_on_missing=False, mode=MODE_IGNORE_RICH):
|
||||
def __init__(self, context, raise_on_missing=False, mode=MODE_RICH_TO_PLAIN):
|
||||
self.context = context
|
||||
self.raise_on_missing = raise_on_missing
|
||||
self.mode = mode
|
||||
@@ -55,22 +56,26 @@ class SafeFormatter(Formatter):
|
||||
def get_value(self, key, args, kwargs):
|
||||
if not self.raise_on_missing and key not in self.context:
|
||||
return '{' + str(key) + '}'
|
||||
r = self.context[key]
|
||||
if isinstance(r, PlainHtmlAlternativeString):
|
||||
if self.mode == self.MODE_IGNORE_RICH:
|
||||
return '{' + str(key) + '}'
|
||||
elif self.mode == self.MODE_RICH_TO_PLAIN:
|
||||
return r.plain
|
||||
return self.context[key]
|
||||
|
||||
def _prepare_value(self, value):
|
||||
if isinstance(value, PlainHtmlAlternativeString):
|
||||
if self.mode == self.MODE_RICH_TO_PLAIN:
|
||||
return value.plain
|
||||
elif self.mode == self.MODE_RICH_TO_HTML:
|
||||
return r.html
|
||||
return r
|
||||
return value.html
|
||||
else:
|
||||
value = str(value)
|
||||
if self.mode == self.MODE_RICH_TO_HTML:
|
||||
value = conditional_escape(value)
|
||||
return value
|
||||
|
||||
def format_field(self, value, format_spec):
|
||||
# Ignore format_spec
|
||||
return super().format_field(value, '')
|
||||
return super().format_field(self._prepare_value(value), '')
|
||||
|
||||
|
||||
def format_map(template, context, raise_on_missing=False, mode=SafeFormatter.MODE_IGNORE_RICH):
|
||||
def format_map(template, context, raise_on_missing=False, mode=SafeFormatter.MODE_RICH_TO_PLAIN):
|
||||
if not isinstance(template, str):
|
||||
template = str(template)
|
||||
return SafeFormatter(context, raise_on_missing, mode=mode).format(template)
|
||||
|
||||
21
src/pretix/helpers/formats/en_NZ/__init__.py
Normal file
21
src/pretix/helpers/formats/en_NZ/__init__.py
Normal file
@@ -0,0 +1,21 @@
|
||||
#
|
||||
# This file is part of pretix (Community Edition).
|
||||
#
|
||||
# Copyright (C) 2014-2020 Raphael Michel and contributors
|
||||
# Copyright (C) 2020-2021 rami.io GmbH and contributors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
|
||||
# Public License as published by the Free Software Foundation in version 3 of the License.
|
||||
#
|
||||
# ADDITIONAL TERMS APPLY: Pursuant to Section 7 of the GNU Affero General Public License, additional terms are
|
||||
# applicable granting you additional permissions and placing additional restrictions on your usage of this software.
|
||||
# Please refer to the pretix LICENSE file to obtain the full terms applicable to this work. If you did not receive
|
||||
# this file, see <https://pretix.eu/about/en/license>.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
||||
# details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
|
||||
# <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
50
src/pretix/helpers/formats/en_NZ/formats.py
Normal file
50
src/pretix/helpers/formats/en_NZ/formats.py
Normal file
@@ -0,0 +1,50 @@
|
||||
#
|
||||
# This file is part of pretix (Community Edition).
|
||||
#
|
||||
# Copyright (C) 2014-2020 Raphael Michel and contributors
|
||||
# Copyright (C) 2020-2021 rami.io GmbH and contributors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
|
||||
# Public License as published by the Free Software Foundation in version 3 of the License.
|
||||
#
|
||||
# ADDITIONAL TERMS APPLY: Pursuant to Section 7 of the GNU Affero General Public License, additional terms are
|
||||
# applicable granting you additional permissions and placing additional restrictions on your usage of this software.
|
||||
# Please refer to the pretix LICENSE file to obtain the full terms applicable to this work. If you did not receive
|
||||
# this file, see <https://pretix.eu/about/en/license>.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
||||
# details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
|
||||
# <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
# Date according to https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date
|
||||
# Following NZ government guidance from https://www.digital.govt.nz/standards-and-guidance/design-and-ux/content-design-guidance/writing-style/numbers
|
||||
DATE_FORMAT = "j F Y" # 12 December 2015
|
||||
DATETIME_FORMAT = "j F Y, g:ia" # 12 December 2015, 5:30pm
|
||||
TIME_FORMAT = "g:ia" # 5:30pm
|
||||
YEAR_MONTH_FORMAT = "F Y" # December 2015
|
||||
MONTH_DAY_FORMAT = "j F" # 12 December
|
||||
SHORT_DATE_FORMAT = "j F Y" # same as DATE_FORMAT per guidance
|
||||
SHORT_DATETIME_FORMAT = "j F Y, g:ia"
|
||||
WEEKDAY_FORMAT = "l" # Monday
|
||||
WEEKDAY_DATE_FORMAT = "l, j F Y" # Friday, 23 November 2018
|
||||
WEEK_FORMAT = "\\W W, o" # ISO week: "W 52, 2024"
|
||||
WEEK_DAY_FORMAT = "D, j M" # Abbrev weekday and month: "Mon, 5 Feb"
|
||||
SHORT_MONTH_DAY_FORMAT = "j/n" # Numeric day/month: "5/2"
|
||||
|
||||
# Parsing inputs; keep d/m/Y and ISO
|
||||
DATE_INPUT_FORMATS = [
|
||||
"%d/%m/%Y",
|
||||
"%Y-%m-%d",
|
||||
"%d/%m/%y",
|
||||
]
|
||||
|
||||
TIME_INPUT_FORMATS = [
|
||||
"%I:%M%p", # 5:30pm
|
||||
"%H:%M:%S",
|
||||
"%H:%M:%S.%f",
|
||||
"%H:%M",
|
||||
]
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -344,68 +344,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -740,7 +740,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2021-09-15 11:22+0000\n"
|
||||
"Last-Translator: Mohamed Tawfiq <mtawfiq@wafyapp.com>\n"
|
||||
"Language-Team: Arabic <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
@@ -359,12 +359,12 @@ msgstr "لا"
|
||||
msgid "close"
|
||||
msgstr "إغلاق"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "مطلوب"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -372,11 +372,11 @@ msgstr ""
|
||||
"تتم معالجة طلبك حاليا. قد يستغرق الأمر بضع دقائق بناء على حجم الفعالية التي "
|
||||
"اخترت."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr "طلبك قيد الانتظار وستتم معالجته قريبا."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -385,36 +385,36 @@ msgstr ""
|
||||
"وصل طلبك للخادم وننتظر تنفيذه. إذا استغرق الأمر أكثر من دقيقتين تواصل معنا "
|
||||
"أو عاود المحاولة مجددا."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "حدث خطأ من نوع {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr "لم نتمكن من الاتصال بالخادم، لكن سنواصل المحاولة، رمز آخر خطأ: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "استغرقت الطلب فترة طويلة، الرجاء المحاولة مرة أخرى."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
"لا يمكننا الوصول إلى الخادم حاليا، حاول مرة أخرى من فضلك. رمز الخطأ : {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "جاري معالجة طلبك …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -423,11 +423,11 @@ msgstr ""
|
||||
"نعمل الآن على ارسال طلبك إلى الخادم، إذا أستغرقت العملية أكثر من دقيقة، يرجى "
|
||||
"التحقق من اتصالك بالإنترنت ثم أعد تحميل الصفحة مرة أخرى."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "أغلق الرسالة"
|
||||
|
||||
@@ -798,7 +798,7 @@ msgstr "ستسترد %(currency)%(amount)"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "الرجاء إدخال المبلغ الذي يمكن للمنظم الاحتفاظ به."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "التوقيت المحلي:"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -344,68 +344,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -740,7 +740,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2020-12-19 07:00+0000\n"
|
||||
"Last-Translator: albert <albert.serra.monner@gmail.com>\n"
|
||||
"Language-Team: Catalan <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
@@ -345,70 +345,70 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
#, fuzzy
|
||||
#| msgid "Cart expired"
|
||||
msgid "required"
|
||||
msgstr "Cistella expirada"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Estem processant la vostra sol·licitud …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -751,7 +751,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,9 +7,9 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"PO-Revision-Date: 2025-05-16 17:00+0000\n"
|
||||
"Last-Translator: David <davemachala@gmail.com>\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-09-08 18:57+0000\n"
|
||||
"Last-Translator: Alois Pospíšil <alois.pospisil@gmail.com>\n"
|
||||
"Language-Team: Czech <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
"cs/>\n"
|
||||
"Language: cs\n"
|
||||
@@ -17,7 +17,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||
"X-Generator: Weblate 5.11.4\n"
|
||||
"X-Generator: Weblate 5.13\n"
|
||||
|
||||
#: pretix/plugins/banktransfer/static/pretixplugins/banktransfer/ui.js:56
|
||||
#: pretix/plugins/banktransfer/static/pretixplugins/banktransfer/ui.js:62
|
||||
@@ -345,12 +345,12 @@ msgstr "Ne"
|
||||
msgid "close"
|
||||
msgstr "zavřít"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "povinný"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -358,11 +358,11 @@ msgstr ""
|
||||
"Váš požadavek je právě zpracováván. V závislosti na velikosti vaší udalosti, "
|
||||
"to může trvat několik minut."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr "Váš požadavek byl vložem do fronty serveru a brzy bude zpracován."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -372,14 +372,14 @@ msgstr ""
|
||||
"Pokud to trvá více jak dvě minuty, prosím kontaktuje nás nebo se vraťte do "
|
||||
"vašeho prohlížeče a zkuste to znovu."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Vyskytla se chyba {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -387,12 +387,12 @@ msgstr ""
|
||||
"Momentálně nemůžeme kontaktovat server, ale stále se o to pokoušíme. "
|
||||
"Poslední chybový kód: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Zpracování požadavku trvá příliš dlouho. Prosím zkuste to znovu."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -400,11 +400,11 @@ msgstr ""
|
||||
"Momentálně nemůžeme kontaktovat server. Prosím zkuste to znovu. Chybový kód: "
|
||||
"{code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Zpracováváme váš požadavek …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -414,11 +414,11 @@ msgstr ""
|
||||
"prosím zkontrolujte své internetové připojení a znovu načtěte stránku a "
|
||||
"zkuste to znovu."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Zavřít zprávu"
|
||||
|
||||
@@ -640,19 +640,15 @@ msgid "Unknown error."
|
||||
msgstr "Neznámá chyba."
|
||||
|
||||
#: pretix/static/pretixcontrol/js/ui/main.js:292
|
||||
#, fuzzy
|
||||
#| msgid "Your color has great contrast and is very easy to read!"
|
||||
msgid "Your color has great contrast and will provide excellent accessibility."
|
||||
msgstr "Tato barva má velmi dobrý kontrast a je velmi dobře čitelná!"
|
||||
msgstr "Tato barva má velmi dobrý kontrast a je velmi dobře čitelná."
|
||||
|
||||
#: pretix/static/pretixcontrol/js/ui/main.js:296
|
||||
#, fuzzy
|
||||
#| msgid "Your color has decent contrast and is probably good-enough to read!"
|
||||
msgid ""
|
||||
"Your color has decent contrast and is sufficient for minimum accessibility "
|
||||
"requirements."
|
||||
msgstr ""
|
||||
"Tato barva má slušný kontrast a pravděpodobně je dostatečně dobře čitelná!"
|
||||
"Tato barva má slušný kontrast a pravděpodobně je dostatečně dobře čitelná."
|
||||
|
||||
#: pretix/static/pretixcontrol/js/ui/main.js:300
|
||||
msgid ""
|
||||
@@ -735,7 +731,7 @@ msgstr "Nákupní košík vypršel"
|
||||
#: pretix/static/pretixpresale/js/ui/cart.js:58
|
||||
#: pretix/static/pretixpresale/js/ui/cart.js:84
|
||||
msgid "Your cart is about to expire."
|
||||
msgstr ""
|
||||
msgstr "Nákupní košík brzy vyprší."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/cart.js:62
|
||||
msgid "The items in your cart are reserved for you for one minute."
|
||||
@@ -748,10 +744,8 @@ msgstr[2] ""
|
||||
"Produkty v nákupním košíku jsou pro vás rezervovány na dalších {num} minut."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/cart.js:83
|
||||
#, fuzzy
|
||||
#| msgid "Cart expired"
|
||||
msgid "Your cart has expired."
|
||||
msgstr "Nákupní košík vypršel"
|
||||
msgstr "Nákupní košík vypršel."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/cart.js:86
|
||||
#, fuzzy
|
||||
@@ -785,7 +779,7 @@ msgstr "Dostanete %(currency)s %(amount)s zpět"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "Zadejte částku, kterou si organizátor může ponechat."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Místní čas:"
|
||||
|
||||
@@ -811,12 +805,12 @@ msgstr "Zvýšit počet"
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:19
|
||||
msgctxt "widget"
|
||||
msgid "Filter events by"
|
||||
msgstr ""
|
||||
msgstr "Filtrovat události"
|
||||
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:20
|
||||
msgctxt "widget"
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
msgstr "Filtrovat"
|
||||
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:21
|
||||
msgctxt "widget"
|
||||
@@ -933,7 +927,7 @@ msgstr "Již není k dispozici"
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:42
|
||||
msgctxt "widget"
|
||||
msgid "Currently not available"
|
||||
msgstr "Momentálně není k dispozici."
|
||||
msgstr "Momentálně není k dispozici"
|
||||
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:44
|
||||
#, javascript-format
|
||||
@@ -968,7 +962,7 @@ msgstr "Obchod vstupenek otevřit"
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:50
|
||||
msgctxt "widget"
|
||||
msgid "Checkout"
|
||||
msgstr "Checkout"
|
||||
msgstr "Přejít k platbě"
|
||||
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:51
|
||||
msgctxt "widget"
|
||||
@@ -1090,7 +1084,7 @@ msgstr "Předchozí týden"
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:74
|
||||
msgctxt "widget"
|
||||
msgid "Open seat selection"
|
||||
msgstr "Otevřete výběr sedadla"
|
||||
msgstr "Otevřete výběr míst"
|
||||
|
||||
#: pretix/static/pretixpresale/js/widget/widget.js:75
|
||||
msgctxt "widget"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -345,68 +345,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -741,7 +741,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2024-07-10 15:00+0000\n"
|
||||
"Last-Translator: Nikolai <nikolai@lengefeldt.de>\n"
|
||||
"Language-Team: Danish <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
@@ -357,14 +357,14 @@ msgstr "Nej"
|
||||
msgid "close"
|
||||
msgstr "Luk"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
#, fuzzy
|
||||
#| msgid "Cart expired"
|
||||
msgid "required"
|
||||
msgstr "Kurv udløbet"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Your request has been queued on the server and will now be processed. "
|
||||
@@ -376,7 +376,7 @@ msgstr ""
|
||||
"Din forespørgsel er under behandling. Alt efter størrelsen af din event kan "
|
||||
"der gå op til et par minutter."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Your request has been queued on the server and will now be processed. "
|
||||
@@ -386,7 +386,7 @@ msgstr ""
|
||||
"Din forespørgsel er under behandling. Alt efter størrelsen af din event kan "
|
||||
"der gå op til et par minutter."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -395,14 +395,14 @@ msgstr ""
|
||||
"Din forespørgsel er under behandling. Hvis der går mere end to minutter, så "
|
||||
"kontakt os eller gå tilbage og prøv igen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Der er sket en fejl ({code})."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -410,12 +410,12 @@ msgstr ""
|
||||
"Vi kan ikke komme i kontakt med serveren, men prøver igen. Seneste fejlkode: "
|
||||
"{code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Forespørgslen tog for lang tid. Prøv igen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -423,11 +423,11 @@ msgstr ""
|
||||
"Vi kan i øjeblikket ikke komme i kontakt med serveren. Prøv igen. Fejlkode: "
|
||||
"{code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Vi behandler din bestilling …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -436,11 +436,11 @@ msgstr ""
|
||||
"Din forespørgsel bliver sendt til serveren. Hvis det tager mere end et "
|
||||
"minut, så tjek din internetforbindelse, genindlæs siden og prøv igen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Luk besked"
|
||||
|
||||
@@ -810,7 +810,7 @@ msgstr "fra %(currency)s %(price)s"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Din lokaltid:"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-05-30 11:08+0000\n"
|
||||
"Last-Translator: Raphael Michel <michel@rami.io>\n"
|
||||
"Language-Team: German <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
@@ -345,12 +345,12 @@ msgstr "Nein"
|
||||
msgid "close"
|
||||
msgstr "schließen"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "erforderlich"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -358,13 +358,13 @@ msgstr ""
|
||||
"Ihre Anfrage wird nun verarbeitet. Je nach Größe der Veranstaltung kann dies "
|
||||
"einige Minuten dauern."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
"Ihre Anfrage befindet sich beim Server in der Warteschlange und wird bald "
|
||||
"verarbeitet."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -375,14 +375,14 @@ msgstr ""
|
||||
"bitte oder gehen Sie in Ihrem Browser einen Schritt zurück und versuchen es "
|
||||
"erneut."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Ein Fehler ist aufgetreten. Fehlercode: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -390,12 +390,12 @@ msgstr ""
|
||||
"Wir können den Server aktuell nicht erreichen, versuchen es aber weiter. "
|
||||
"Letzter Fehlercode: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Diese Anfrage hat zu lange gedauert. Bitte erneut versuchen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -403,11 +403,11 @@ msgstr ""
|
||||
"Wir können den Server aktuell nicht erreichen. Bitte versuchen Sie es noch "
|
||||
"einmal. Fehlercode: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Wir verarbeiten Ihre Anfrage …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -417,11 +417,11 @@ msgstr ""
|
||||
"dauert, prüfen Sie bitte Ihre Internetverbindung. Danach können Sie diese "
|
||||
"Seite neu laden und es erneut versuchen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr "Wenn dies länger als einige Minuten dauert, kontaktiere uns bitte."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Schließen"
|
||||
|
||||
@@ -771,7 +771,7 @@ msgstr "Sie erhalten %(currency)s %(amount)s zurück"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "Bitte geben Sie den Betrag ein, den der Veranstalter einbehalten darf."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Deine lokale Zeit:"
|
||||
|
||||
|
||||
@@ -1,125 +1,143 @@
|
||||
2FA
|
||||
ABGEKÜNDIGT
|
||||
ABN
|
||||
AES
|
||||
Absenderadresse
|
||||
Absenderinformation
|
||||
Absendername
|
||||
ABGEKÜNDIGT
|
||||
Admin
|
||||
Adminbereich
|
||||
Admin-Modus
|
||||
Admin-Sitzung
|
||||
Admin-Sitzungen
|
||||
AES
|
||||
Affirm
|
||||
AGPL
|
||||
AGPLv
|
||||
Alipay
|
||||
and
|
||||
API-Meta-Informationen
|
||||
APM
|
||||
App
|
||||
App-Gebühr
|
||||
ApplePay
|
||||
Apps
|
||||
APM
|
||||
as
|
||||
Aufbuchungen
|
||||
aufeinanderfolgenden
|
||||
Aufteilungsliste
|
||||
aufzubuchen
|
||||
auschecken
|
||||
Ausgangsscan
|
||||
Ausgangsscans
|
||||
ausgeklappt
|
||||
ausgecheckt
|
||||
ausgeklappt
|
||||
auswahl
|
||||
Auth
|
||||
Authentication
|
||||
Authenticator
|
||||
Authentifizierungsmechanismus
|
||||
Autorisierungs
|
||||
Authenticator-App
|
||||
Autorisierungscode
|
||||
Backend
|
||||
Autorisierungs-Endpunktes
|
||||
Badge
|
||||
Badge-Druck
|
||||
Badge-Layout
|
||||
Badge-Layouts
|
||||
Badges
|
||||
Bancontact
|
||||
Bank-App
|
||||
BankID
|
||||
Banking
|
||||
barcodes
|
||||
Banking-App
|
||||
Baskisch
|
||||
Bcc
|
||||
BCC
|
||||
BCC-Adresse
|
||||
Bcc-Kopie
|
||||
Beispielevent
|
||||
Beispielproduktvariantenbeschreibung
|
||||
Belarus
|
||||
Benachrichtigungs
|
||||
Benachrichtigungsart
|
||||
Benachrichtigungsarten
|
||||
Benachrichtigungseinstellungen
|
||||
Berechtigungs
|
||||
Bestätigungs
|
||||
Bestellbestätigungs
|
||||
Benachrichtigungs-Einstellungen
|
||||
Benachrichtigungs-E-Mail
|
||||
Benutzer-ID-Feld
|
||||
Benutzer-ID-Felds
|
||||
Bestätigungs-E-Mail
|
||||
Bestellbestätigungs-E-Mail
|
||||
Bestellbestätigungs-E-Mails
|
||||
Bestellungsänderungen
|
||||
Bestellungsstatus
|
||||
Bestellungs
|
||||
Bestellungs-Synchronisation
|
||||
Bestellungs-Synchronisierung
|
||||
bez
|
||||
BezahlCode
|
||||
Bezahlmethode
|
||||
Blackberry
|
||||
BLIK
|
||||
Blogpost
|
||||
BN
|
||||
Branding
|
||||
Browsereinstellungen
|
||||
BSD
|
||||
bspw
|
||||
BN-Code
|
||||
Bokmål
|
||||
Boleto
|
||||
Buchhaltungs
|
||||
Branding-Informationen
|
||||
Browsereinstellungen
|
||||
BSD-Lizenz
|
||||
bspw
|
||||
Bundles
|
||||
Butterfly
|
||||
Butterfly-Badge
|
||||
bzw
|
||||
ca
|
||||
Ceuta
|
||||
Cc
|
||||
Ceuta
|
||||
chardet
|
||||
charge
|
||||
Charge-ID
|
||||
Checkbox
|
||||
Check-in-App
|
||||
Check-in-Apps
|
||||
Check-in-QR-Code
|
||||
Checkout
|
||||
Chrome
|
||||
Choice
|
||||
Community
|
||||
Client-ID
|
||||
Client-Secret
|
||||
CODE.txt
|
||||
Community-Übersetzungen
|
||||
CONFIRM
|
||||
Connect
|
||||
Consent
|
||||
Cookie-Consent-Management
|
||||
Cookie-Consent-Mechanismus
|
||||
Copyleft
|
||||
Cronjob
|
||||
Cross
|
||||
Cronjob-Komponente
|
||||
Cross-Selling-Bedingung
|
||||
Cross-Selling-Kategorie
|
||||
Cross-Selling-Kategorien
|
||||
Cross-Selling-Schritt
|
||||
csv
|
||||
CSV
|
||||
CSV-Datei
|
||||
CSV-Dateien
|
||||
CSV-Eingabe
|
||||
CSV-Eingabedaten
|
||||
CSV-Import
|
||||
CSV-Input
|
||||
CSV-Lesen
|
||||
CSV-Spalte
|
||||
Customer
|
||||
CZK
|
||||
Dashboard
|
||||
Datensynchronisation
|
||||
Debug
|
||||
Debug-Modus
|
||||
dekodi
|
||||
deliverability
|
||||
DNS
|
||||
Desktop-Apps
|
||||
Di
|
||||
Do
|
||||
Doe
|
||||
Downloadformat
|
||||
Downloadseite
|
||||
Dr
|
||||
Drag
|
||||
Droid
|
||||
Drop
|
||||
DSS
|
||||
Drag-and-Drop-Interfaces
|
||||
Edge
|
||||
Eingangsscan
|
||||
Einlassbuchung
|
||||
Einlassdatum
|
||||
Einlasskontrolle
|
||||
Einlassuhrzeita
|
||||
einzuchecken
|
||||
email
|
||||
Enterprise
|
||||
EPC
|
||||
EPS
|
||||
E-Mail-Renderer
|
||||
Enterprise-Lizenz
|
||||
Enterprise-Lizenzen
|
||||
Enterprise-Plugin
|
||||
Enterprise-Plugins
|
||||
eps
|
||||
EPS
|
||||
Erstattungsbetrag
|
||||
Erstattungsliste
|
||||
Erstattungsmethode
|
||||
@@ -127,175 +145,231 @@ Erstattungsoptionen
|
||||
Erstattungsstatus
|
||||
Erstattungsweg
|
||||
erstmalig
|
||||
Erweiterungs
|
||||
etc
|
||||
EU-USt-ID-Nr
|
||||
Event
|
||||
Event-Eigenschaft
|
||||
Eventeingang
|
||||
Eventfirma
|
||||
Event-Erstellung
|
||||
Event-Setup-Tool
|
||||
Event-Ticketing-Software
|
||||
Event-Ticketshop
|
||||
Event-Übersicht
|
||||
Event-Website
|
||||
evtl
|
||||
Explorer
|
||||
FA
|
||||
Favicon
|
||||
F-Droid
|
||||
Footer
|
||||
Footer-Link
|
||||
Footer-Text
|
||||
Galicisch
|
||||
gehostete
|
||||
geht's
|
||||
GENEXAMPLE
|
||||
Geo
|
||||
geocoding
|
||||
Geocoding
|
||||
Geocoding-Daten
|
||||
Geo-Koordinaten
|
||||
Geräte-ID
|
||||
gescannt
|
||||
ggf
|
||||
GiroCode
|
||||
Ggf
|
||||
giropay
|
||||
GPL
|
||||
Grants
|
||||
Gruppierungswert
|
||||
Gruppierungsspalte
|
||||
Gruppierungswert
|
||||
Guide
|
||||
Gutscheineinlöser
|
||||
Händler-ID
|
||||
Händler-PayPal-Konto
|
||||
Hardware-Tokengenerator
|
||||
herunterscrollen
|
||||
hochlädst
|
||||
HTML-E-Mail-Renderer
|
||||
HTTPS
|
||||
IBAN
|
||||
HTTPS-Verbindungen
|
||||
HTTPS-Website
|
||||
IBANs
|
||||
iCal
|
||||
ics
|
||||
ics-Kalenderdatei
|
||||
ID
|
||||
iDEAL
|
||||
IDs
|
||||
Inc
|
||||
inkl
|
||||
innen-Badges
|
||||
innenname
|
||||
innennamen
|
||||
innergemeinschaftliche
|
||||
Innergemeinschaftlicher
|
||||
Input
|
||||
Installations
|
||||
integrationen
|
||||
intra
|
||||
INV
|
||||
Installations-ID
|
||||
Integrationen
|
||||
invalidieren
|
||||
invalidiert
|
||||
ISU
|
||||
iOS
|
||||
ISU
|
||||
Itaú
|
||||
iTunes
|
||||
JavaScript
|
||||
JSON
|
||||
JSON-Datei
|
||||
Kategoriebeschreibung
|
||||
Key
|
||||
Klarna
|
||||
Kombitickets
|
||||
Kompatibilitätsmodus
|
||||
Konfigurations
|
||||
Kosovo
|
||||
land
|
||||
landesspezifische
|
||||
Lead
|
||||
Leaflet
|
||||
Lead-Scanning
|
||||
Leaflet-Kacheln
|
||||
Linktext
|
||||
lit
|
||||
Log-ID
|
||||
Logindaten
|
||||
Lösch
|
||||
loszulegen
|
||||
Ltd
|
||||
Macau
|
||||
MapQuest-API-Key
|
||||
max
|
||||
MariaDB
|
||||
MapQuest
|
||||
Medien-ID
|
||||
Melilla
|
||||
Mercado
|
||||
Merchandise
|
||||
Meta
|
||||
Metadaten
|
||||
Meta-Eigenschaft
|
||||
Meta-Eigenschaften
|
||||
Meta-Informationen
|
||||
Mi
|
||||
Mifare
|
||||
Mitgliedschafts
|
||||
Mitgliedschaftsdauer
|
||||
min
|
||||
Mitgliedschaftsdauer
|
||||
Mitgliedschafts-Typ
|
||||
Mitgliedschafts-Typen
|
||||
Mo
|
||||
MobilePay
|
||||
MOTO
|
||||
MOTO-Zahlungen
|
||||
Multibanco
|
||||
Multiple-Choice-Fragen
|
||||
MwSt
|
||||
MyBank
|
||||
name
|
||||
NFC
|
||||
NFC-basierte
|
||||
NFC-Chip
|
||||
NFC-Chips
|
||||
NFC-Medien
|
||||
NFC-Zahlungsmitteln
|
||||
Nr
|
||||
NREI
|
||||
number
|
||||
NXP
|
||||
Objekt-IDs
|
||||
Offline-Scan
|
||||
OK
|
||||
On
|
||||
Onlinebanking
|
||||
Online-Banking
|
||||
Onlinebanking-Zugangsdaten
|
||||
Open
|
||||
OpenCage
|
||||
OpenCage-API-Key
|
||||
OpenID
|
||||
OpenStreetMap
|
||||
Opera
|
||||
Output
|
||||
OXXO
|
||||
parsen
|
||||
Pago
|
||||
parsen
|
||||
Pay
|
||||
PayPal
|
||||
PayPals
|
||||
PayPal-Account
|
||||
PayPal-Accounts
|
||||
PayPal-Konto
|
||||
PayPal-Kontos
|
||||
PayPal-Sandbox
|
||||
PayPal-Sandbox-Account
|
||||
PayPal-Seite
|
||||
PayPal-Verkaufs-ID
|
||||
PayPal-Webhook
|
||||
PayPal-Zahlung
|
||||
PayPal-Zahlungen
|
||||
PayPal-Zahlungs-ID
|
||||
PayU
|
||||
PCI
|
||||
PCI-DSS-Formulare
|
||||
Peppol-Netzwerk
|
||||
Peppol-Teilnehmer-ID
|
||||
Peppol-Teilnehmer-IDs
|
||||
Personalisierung
|
||||
PEPPOL
|
||||
PKCE
|
||||
PKCE-Erweiterung
|
||||
Platzhalterzeichen
|
||||
Play
|
||||
Plugin
|
||||
Plugins
|
||||
POS
|
||||
Postfix
|
||||
PostgreSQL
|
||||
PPRO
|
||||
prefix
|
||||
Prefix
|
||||
pretix
|
||||
pretixdesk
|
||||
pretix-Apps
|
||||
pretix-Benutzerkennung
|
||||
pretixdesk-Apps
|
||||
pretixdroid
|
||||
pretixPOS
|
||||
pretix-Enterprise-Lizenz
|
||||
pretix-Enterprise-Plugins
|
||||
pretix-Entwickler
|
||||
pretix-Entwicklern
|
||||
pretix-Feld
|
||||
pretix-Installation
|
||||
pretix-Konto
|
||||
pretix-Kontos
|
||||
pretix-Logo
|
||||
pretix-Logos
|
||||
pretix-Plugins
|
||||
pretixPRINT
|
||||
pretixPRINT-Version
|
||||
pretixSCAN
|
||||
Professional
|
||||
pretix-Support
|
||||
pretix-Team
|
||||
pretix-Update
|
||||
pretix-Version
|
||||
pretix-Versionen
|
||||
pretix-Widget
|
||||
Produkt-ID
|
||||
Produkt-Metadaten
|
||||
Przelewy
|
||||
pt
|
||||
px
|
||||
Query
|
||||
QR
|
||||
QR-Code
|
||||
QR-Code-Bereich
|
||||
QR-Code-Geheimnis
|
||||
QR-Code-Inhalt
|
||||
QR-Code-Reader
|
||||
QR-Codes
|
||||
QR-Farbe
|
||||
Query-Parameter
|
||||
rabattiert
|
||||
Rabattiert
|
||||
Rabattierung
|
||||
Reader
|
||||
Rechnungs
|
||||
Rechnungs-E-Mail
|
||||
Rechungsdatei
|
||||
Reddit
|
||||
Referer
|
||||
Registrierungs
|
||||
Registrierungsdatum
|
||||
Registrierungs-Details
|
||||
Registrierungsnummer
|
||||
Registrierungsversuche
|
||||
remote
|
||||
Renderer
|
||||
Request
|
||||
Requests
|
||||
Request-URL
|
||||
Reservierungszeitraum
|
||||
reverse
|
||||
Reverse
|
||||
Reverse-Proxy
|
||||
Revisionssicherheit
|
||||
Revolut
|
||||
Revolut-App
|
||||
rückabgewickelt
|
||||
Rundungsdifferenzen
|
||||
Sa
|
||||
Saalplan
|
||||
Sammlungsstücken
|
||||
SAQ
|
||||
SCA
|
||||
Scan
|
||||
Scanning-Apps
|
||||
Scans
|
||||
Scanergebnis
|
||||
Scanning
|
||||
Scan-Terminals
|
||||
Scan-Typ
|
||||
Scan-Zeitpunkt
|
||||
schiefgeht
|
||||
schiefgelaufen
|
||||
Scope
|
||||
@@ -304,23 +378,37 @@ SdI
|
||||
sechsstelligen
|
||||
Secret
|
||||
Security
|
||||
Selling
|
||||
SEPA
|
||||
Shirts
|
||||
selbst-gehostete
|
||||
SEPA-Bankeinzug
|
||||
SEPA-Bankkonto
|
||||
SEPA-Konten
|
||||
SEPA-Lastschrift
|
||||
SEPA-Lastschriften
|
||||
SEPA-Mandat
|
||||
SEPA-XML
|
||||
Session-ID
|
||||
Signaturverfahren
|
||||
Sign
|
||||
Single-Sign-On
|
||||
Single-Sign-On-Dienste
|
||||
Single-Sign-On-Methode
|
||||
Single-Sign-On-Provider
|
||||
Sitzplanmoduls
|
||||
Social
|
||||
Sofort
|
||||
SOFORT
|
||||
Sitzplatz-ID
|
||||
Sitzplatz-IDs
|
||||
Social-Media-Bild
|
||||
Sorry
|
||||
Source
|
||||
SPF
|
||||
Source-Codes
|
||||
SPF-Eintrag
|
||||
SSL
|
||||
SSO
|
||||
SSO-Client
|
||||
SSO-Clients
|
||||
SSO-Provider
|
||||
STARTTLS
|
||||
Steuer-Aufteilungsliste
|
||||
Steuerregel-ID
|
||||
Steuerschuldnerschaft
|
||||
Store
|
||||
Stornierungsanfrage
|
||||
Stornobedingungen
|
||||
Stornobeleg
|
||||
@@ -330,58 +418,75 @@ Stornogebühren
|
||||
Stornos
|
||||
Strg
|
||||
Stripe
|
||||
Stripes
|
||||
Stripe-Account
|
||||
Stripe-App
|
||||
Stripe-Dashboard
|
||||
Stripe-Konto
|
||||
Stripe-Kontos
|
||||
Stripe-Modul
|
||||
Stripe-Support
|
||||
Stripe-Test-API
|
||||
Strong
|
||||
Swish
|
||||
Synchronisations
|
||||
systemweiten
|
||||
Tab
|
||||
tag
|
||||
Teammitglied
|
||||
Teamname
|
||||
Teilnehmer-Badges
|
||||
Telephone
|
||||
Terminal-ID
|
||||
Termin-ID
|
||||
Ticketing
|
||||
Timeout
|
||||
To
|
||||
Tokengenerator
|
||||
Toolbar
|
||||
Ticketing-Firma
|
||||
Ticket-Output
|
||||
Ticket-QR-Code
|
||||
TODO
|
||||
To-Do-Liste
|
||||
TOTP
|
||||
Trace
|
||||
Trace-Nummer
|
||||
Tracking
|
||||
transaktionale
|
||||
Trustly
|
||||
Turnover
|
||||
T-Shirts
|
||||
Turnover-Nummer
|
||||
TWINT
|
||||
txt
|
||||
überbuchen
|
||||
überbucht
|
||||
überbuchten
|
||||
überzahlt
|
||||
Überzahlt
|
||||
ÜBERZAHLT
|
||||
überzahlte
|
||||
Überzahlte
|
||||
Überzahlten
|
||||
uhrzeit
|
||||
UID
|
||||
UID-Basis
|
||||
UID-Schutzfunktion
|
||||
Ultralight
|
||||
umzubuchen
|
||||
ungespeicherte
|
||||
unkategorisiert
|
||||
Unkategorisiert
|
||||
Unkategorisierte
|
||||
unlöschbar
|
||||
unlöschbaren
|
||||
untenstehende
|
||||
untenstehenden
|
||||
unterzahlt
|
||||
Unterzahlt
|
||||
UNTERZAHLT
|
||||
unzugeordnete
|
||||
Unzugeordnete
|
||||
unzugeordneten
|
||||
umzubuchen
|
||||
URIs
|
||||
Ursprüngl
|
||||
USt
|
||||
Überweisungs
|
||||
Überzahlten
|
||||
USt-ID
|
||||
USt-ID-Nr
|
||||
USt-ID-Nummer
|
||||
Validierung
|
||||
Validierungsregeln
|
||||
Varianten-ID
|
||||
Venmo
|
||||
Veranstalterdomain
|
||||
Veranstaltereinstellungen
|
||||
@@ -394,39 +499,50 @@ Veranstalterseite
|
||||
Veranstalterübersicht
|
||||
veranstalterweiten
|
||||
Veranstaltungs
|
||||
Veranstalterdomain
|
||||
Veranstaltungs-Metadaten
|
||||
veranstaltungsweiten
|
||||
Verfügbarkeitsberechnung
|
||||
Verfügbarkeitsstatus
|
||||
Verkaufs-ID
|
||||
Verkkopankki
|
||||
Veröffentlichbarer
|
||||
VIP
|
||||
Verwendungszweck-Postfix
|
||||
VIP-Bereiches
|
||||
Warenkorb-ID
|
||||
Warenkorb-Timeout
|
||||
WebAuthn
|
||||
WebAuthn-Gerät
|
||||
WebAuthn-kompatibler
|
||||
WebAuthn-Token
|
||||
WebAuthn-Unterstützung
|
||||
Webhook
|
||||
Webhooks
|
||||
Weiterleitungs
|
||||
Webhook-Wiederholungsaufträge
|
||||
WeChat
|
||||
WeChat-Zahlung
|
||||
Weiterleitungs-URIs
|
||||
Weiterleitungs-URL
|
||||
Weiterleitungs-URLs
|
||||
WhatsApp
|
||||
Widget
|
||||
Widget-Code
|
||||
xlsx
|
||||
XXX
|
||||
XXXX
|
||||
XXXXX
|
||||
Yubikey
|
||||
Zahlungs
|
||||
Zahlungsbestätigungs
|
||||
Zahlungserinnerungs
|
||||
zahlungspflichtig
|
||||
Zahlungsplugins
|
||||
Zahlungsbestätigungs-E-Mail
|
||||
Zahlungserinnerungs-E-Mail
|
||||
Zahlungs-ID
|
||||
Zahlungspflichtig
|
||||
Zehnerkarten
|
||||
zeitbasiert
|
||||
Zeitbasiert
|
||||
Zeitslotbuchung
|
||||
Zimpler
|
||||
ZIP
|
||||
ZIP-Datei
|
||||
zubuchbaren
|
||||
zurückbuchen
|
||||
zurückgeleitet
|
||||
zurückwechseln
|
||||
zutrittsberechtigt
|
||||
ZVT-Terminal
|
||||
zzgl
|
||||
ZVT
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-05-30 11:07+0000\n"
|
||||
"Last-Translator: Raphael Michel <michel@rami.io>\n"
|
||||
"Language-Team: German (informal) <https://translate.pretix.eu/projects/"
|
||||
@@ -345,12 +345,12 @@ msgstr "Nein"
|
||||
msgid "close"
|
||||
msgstr "schließen"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "erforderlich"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -358,13 +358,13 @@ msgstr ""
|
||||
"Deine Anfrage wird nun verarbeitet. Je nach Größe der Veranstaltung kann "
|
||||
"dies einige Minuten dauern."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
"Deine Anfrage befindet sich beim Server in der Warteschlange und wird bald "
|
||||
"verarbeitet."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -374,14 +374,14 @@ msgstr ""
|
||||
"verarbeitet. Wenn dies länger als zwei Minuten dauert, kontaktiere uns bitte "
|
||||
"oder gehe in deinem Browser einen Schritt zurück und versuche es erneut."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Ein Fehler vom Typ {code} ist aufgetreten."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -389,12 +389,12 @@ msgstr ""
|
||||
"Wir können den Server aktuell nicht erreichen, versuchen es aber weiter. "
|
||||
"Letzter Fehlercode: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Diese Anfrage hat zu lange gedauert. Bitte erneut versuchen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -402,11 +402,11 @@ msgstr ""
|
||||
"Wir können den Server aktuell nicht erreichen. Bitte versuche es noch "
|
||||
"einmal. Fehlercode: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Wir verarbeiten deine Anfrage …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -416,12 +416,12 @@ msgstr ""
|
||||
"dauert, prüfe bitte deine Internetverbindung. Danach kannst du diese Seite "
|
||||
"neu laden und es erneut versuchen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
"Wenn dies länger als einige Minuten dauert, kontaktieren Sie uns bitte."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Schließen"
|
||||
|
||||
@@ -771,7 +771,7 @@ msgstr "Du erhältst %(currency)s %(amount)s zurück"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "Bitte gib den Betrag ein, den der Veranstalter einbehalten darf."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Deine lokale Zeit:"
|
||||
|
||||
|
||||
@@ -1,125 +1,143 @@
|
||||
2FA
|
||||
ABGEKÜNDIGT
|
||||
ABN
|
||||
AES
|
||||
Absenderadresse
|
||||
Absenderinformation
|
||||
Absendername
|
||||
ABGEKÜNDIGT
|
||||
Admin
|
||||
Adminbereich
|
||||
Admin-Modus
|
||||
Admin-Sitzung
|
||||
Admin-Sitzungen
|
||||
AES
|
||||
Affirm
|
||||
AGPL
|
||||
AGPLv
|
||||
Alipay
|
||||
and
|
||||
API-Meta-Informationen
|
||||
APM
|
||||
App
|
||||
App-Gebühr
|
||||
ApplePay
|
||||
Apps
|
||||
APM
|
||||
as
|
||||
Aufbuchungen
|
||||
aufeinanderfolgenden
|
||||
Aufteilungsliste
|
||||
aufzubuchen
|
||||
auschecken
|
||||
Ausgangsscan
|
||||
Ausgangsscans
|
||||
ausgeklappt
|
||||
ausgecheckt
|
||||
ausgeklappt
|
||||
auswahl
|
||||
Auth
|
||||
Authentication
|
||||
Authenticator
|
||||
Authentifizierungsmechanismus
|
||||
Autorisierungs
|
||||
Authenticator-App
|
||||
Autorisierungscode
|
||||
Backend
|
||||
Autorisierungs-Endpunktes
|
||||
Badge
|
||||
Badge-Druck
|
||||
Badge-Layout
|
||||
Badge-Layouts
|
||||
Badges
|
||||
Bancontact
|
||||
Bank-App
|
||||
BankID
|
||||
Banking
|
||||
barcodes
|
||||
Banking-App
|
||||
Baskisch
|
||||
Bcc
|
||||
BCC
|
||||
BCC-Adresse
|
||||
Bcc-Kopie
|
||||
Beispielevent
|
||||
Beispielproduktvariantenbeschreibung
|
||||
Belarus
|
||||
Benachrichtigungs
|
||||
Benachrichtigungsart
|
||||
Benachrichtigungsarten
|
||||
Benachrichtigungseinstellungen
|
||||
Berechtigungs
|
||||
Bestätigungs
|
||||
Bestellbestätigungs
|
||||
Benachrichtigungs-Einstellungen
|
||||
Benachrichtigungs-E-Mail
|
||||
Benutzer-ID-Feld
|
||||
Benutzer-ID-Felds
|
||||
Bestätigungs-E-Mail
|
||||
Bestellbestätigungs-E-Mail
|
||||
Bestellbestätigungs-E-Mails
|
||||
Bestellungsänderungen
|
||||
Bestellungsstatus
|
||||
Bestellungs
|
||||
Bestellungs-Synchronisation
|
||||
Bestellungs-Synchronisierung
|
||||
bez
|
||||
BezahlCode
|
||||
Bezahlmethode
|
||||
Blackberry
|
||||
BLIK
|
||||
Blogpost
|
||||
BN
|
||||
Branding
|
||||
Browsereinstellungen
|
||||
BSD
|
||||
bspw
|
||||
BN-Code
|
||||
Bokmål
|
||||
Boleto
|
||||
Buchhaltungs
|
||||
Branding-Informationen
|
||||
Browsereinstellungen
|
||||
BSD-Lizenz
|
||||
bspw
|
||||
Bundles
|
||||
Butterfly
|
||||
Butterfly-Badge
|
||||
bzw
|
||||
ca
|
||||
Ceuta
|
||||
Cc
|
||||
Ceuta
|
||||
chardet
|
||||
charge
|
||||
Charge-ID
|
||||
Checkbox
|
||||
Check-in-App
|
||||
Check-in-Apps
|
||||
Check-in-QR-Code
|
||||
Checkout
|
||||
Chrome
|
||||
Choice
|
||||
Community
|
||||
Client-ID
|
||||
Client-Secret
|
||||
CODE.txt
|
||||
Community-Übersetzungen
|
||||
CONFIRM
|
||||
Connect
|
||||
Consent
|
||||
Cookie-Consent-Management
|
||||
Cookie-Consent-Mechanismus
|
||||
Copyleft
|
||||
Cronjob
|
||||
Cross
|
||||
Cronjob-Komponente
|
||||
Cross-Selling-Bedingung
|
||||
Cross-Selling-Kategorie
|
||||
Cross-Selling-Kategorien
|
||||
Cross-Selling-Schritt
|
||||
csv
|
||||
CSV
|
||||
CSV-Datei
|
||||
CSV-Dateien
|
||||
CSV-Eingabe
|
||||
CSV-Eingabedaten
|
||||
CSV-Import
|
||||
CSV-Input
|
||||
CSV-Lesen
|
||||
CSV-Spalte
|
||||
Customer
|
||||
CZK
|
||||
Dashboard
|
||||
Datensynchronisation
|
||||
Debug
|
||||
Debug-Modus
|
||||
dekodi
|
||||
deliverability
|
||||
DNS
|
||||
Desktop-Apps
|
||||
Di
|
||||
Do
|
||||
Doe
|
||||
Downloadformat
|
||||
Downloadseite
|
||||
Dr
|
||||
Drag
|
||||
Droid
|
||||
Drop
|
||||
DSS
|
||||
Drag-and-Drop-Interfaces
|
||||
Edge
|
||||
Eingangsscan
|
||||
Einlassbuchung
|
||||
Einlassdatum
|
||||
Einlasskontrolle
|
||||
Einlassuhrzeita
|
||||
einzuchecken
|
||||
email
|
||||
Enterprise
|
||||
EPC
|
||||
EPS
|
||||
E-Mail-Renderer
|
||||
Enterprise-Lizenz
|
||||
Enterprise-Lizenzen
|
||||
Enterprise-Plugin
|
||||
Enterprise-Plugins
|
||||
eps
|
||||
EPS
|
||||
Erstattungsbetrag
|
||||
Erstattungsliste
|
||||
Erstattungsmethode
|
||||
@@ -127,175 +145,231 @@ Erstattungsoptionen
|
||||
Erstattungsstatus
|
||||
Erstattungsweg
|
||||
erstmalig
|
||||
Erweiterungs
|
||||
etc
|
||||
EU-USt-ID-Nr
|
||||
Event
|
||||
Event-Eigenschaft
|
||||
Eventeingang
|
||||
Eventfirma
|
||||
Event-Erstellung
|
||||
Event-Setup-Tool
|
||||
Event-Ticketing-Software
|
||||
Event-Ticketshop
|
||||
Event-Übersicht
|
||||
Event-Website
|
||||
evtl
|
||||
Explorer
|
||||
FA
|
||||
Favicon
|
||||
F-Droid
|
||||
Footer
|
||||
Footer-Link
|
||||
Footer-Text
|
||||
Galicisch
|
||||
gehostete
|
||||
geht's
|
||||
GENEXAMPLE
|
||||
Geo
|
||||
geocoding
|
||||
Geocoding
|
||||
Geocoding-Daten
|
||||
Geo-Koordinaten
|
||||
Geräte-ID
|
||||
gescannt
|
||||
ggf
|
||||
GiroCode
|
||||
Ggf
|
||||
giropay
|
||||
GPL
|
||||
Grants
|
||||
Gruppierungswert
|
||||
Gruppierungsspalte
|
||||
Gruppierungswert
|
||||
Guide
|
||||
Gutscheineinlöser
|
||||
Händler-ID
|
||||
Händler-PayPal-Konto
|
||||
Hardware-Tokengenerator
|
||||
herunterscrollen
|
||||
hochlädst
|
||||
HTML-E-Mail-Renderer
|
||||
HTTPS
|
||||
IBAN
|
||||
HTTPS-Verbindungen
|
||||
HTTPS-Website
|
||||
IBANs
|
||||
iCal
|
||||
ics
|
||||
ics-Kalenderdatei
|
||||
ID
|
||||
iDEAL
|
||||
IDs
|
||||
Inc
|
||||
inkl
|
||||
innen-Badges
|
||||
innenname
|
||||
innennamen
|
||||
innergemeinschaftliche
|
||||
Innergemeinschaftlicher
|
||||
Input
|
||||
Installations
|
||||
integrationen
|
||||
intra
|
||||
INV
|
||||
Installations-ID
|
||||
Integrationen
|
||||
invalidieren
|
||||
invalidiert
|
||||
ISU
|
||||
iOS
|
||||
ISU
|
||||
Itaú
|
||||
iTunes
|
||||
JavaScript
|
||||
JSON
|
||||
JSON-Datei
|
||||
Kategoriebeschreibung
|
||||
Key
|
||||
Klarna
|
||||
Kombitickets
|
||||
Kompatibilitätsmodus
|
||||
Konfigurations
|
||||
Kosovo
|
||||
land
|
||||
landesspezifische
|
||||
Lead
|
||||
Leaflet
|
||||
Lead-Scanning
|
||||
Leaflet-Kacheln
|
||||
Linktext
|
||||
lit
|
||||
Log-ID
|
||||
Logindaten
|
||||
Lösch
|
||||
loszulegen
|
||||
Ltd
|
||||
Macau
|
||||
MapQuest-API-Key
|
||||
max
|
||||
MariaDB
|
||||
MapQuest
|
||||
Medien-ID
|
||||
Melilla
|
||||
Mercado
|
||||
Merchandise
|
||||
Meta
|
||||
Metadaten
|
||||
Meta-Eigenschaft
|
||||
Meta-Eigenschaften
|
||||
Meta-Informationen
|
||||
Mi
|
||||
Mifare
|
||||
Mitgliedschafts
|
||||
Mitgliedschaftsdauer
|
||||
min
|
||||
Mitgliedschaftsdauer
|
||||
Mitgliedschafts-Typ
|
||||
Mitgliedschafts-Typen
|
||||
Mo
|
||||
MobilePay
|
||||
MOTO
|
||||
MOTO-Zahlungen
|
||||
Multibanco
|
||||
Multiple-Choice-Fragen
|
||||
MwSt
|
||||
MyBank
|
||||
name
|
||||
NFC
|
||||
NFC-basierte
|
||||
NFC-Chip
|
||||
NFC-Chips
|
||||
NFC-Medien
|
||||
NFC-Zahlungsmitteln
|
||||
Nr
|
||||
NREI
|
||||
number
|
||||
NXP
|
||||
Objekt-IDs
|
||||
Offline-Scan
|
||||
OK
|
||||
On
|
||||
Onlinebanking
|
||||
Online-Banking
|
||||
Onlinebanking-Zugangsdaten
|
||||
Open
|
||||
OpenCage
|
||||
OpenCage-API-Key
|
||||
OpenID
|
||||
OpenStreetMap
|
||||
Opera
|
||||
Output
|
||||
OXXO
|
||||
parsen
|
||||
Pago
|
||||
parsen
|
||||
Pay
|
||||
PayPal
|
||||
PayPals
|
||||
PayPal-Account
|
||||
PayPal-Accounts
|
||||
PayPal-Konto
|
||||
PayPal-Kontos
|
||||
PayPal-Sandbox
|
||||
PayPal-Sandbox-Account
|
||||
PayPal-Seite
|
||||
PayPal-Verkaufs-ID
|
||||
PayPal-Webhook
|
||||
PayPal-Zahlung
|
||||
PayPal-Zahlungen
|
||||
PayPal-Zahlungs-ID
|
||||
PayU
|
||||
PCI
|
||||
PCI-DSS-Formulare
|
||||
Peppol-Netzwerk
|
||||
Peppol-Teilnehmer-ID
|
||||
Peppol-Teilnehmer-IDs
|
||||
Personalisierung
|
||||
PEPPOL
|
||||
PKCE
|
||||
PKCE-Erweiterung
|
||||
Platzhalterzeichen
|
||||
Play
|
||||
Plugin
|
||||
Plugins
|
||||
POS
|
||||
Postfix
|
||||
PostgreSQL
|
||||
PPRO
|
||||
prefix
|
||||
Prefix
|
||||
pretix
|
||||
pretixdesk
|
||||
pretix-Apps
|
||||
pretix-Benutzerkennung
|
||||
pretixdesk-Apps
|
||||
pretixdroid
|
||||
pretixPOS
|
||||
pretix-Enterprise-Lizenz
|
||||
pretix-Enterprise-Plugins
|
||||
pretix-Entwickler
|
||||
pretix-Entwicklern
|
||||
pretix-Feld
|
||||
pretix-Installation
|
||||
pretix-Konto
|
||||
pretix-Kontos
|
||||
pretix-Logo
|
||||
pretix-Logos
|
||||
pretix-Plugins
|
||||
pretixPRINT
|
||||
pretixPRINT-Version
|
||||
pretixSCAN
|
||||
Professional
|
||||
pretix-Support
|
||||
pretix-Team
|
||||
pretix-Update
|
||||
pretix-Version
|
||||
pretix-Versionen
|
||||
pretix-Widget
|
||||
Produkt-ID
|
||||
Produkt-Metadaten
|
||||
Przelewy
|
||||
pt
|
||||
px
|
||||
Query
|
||||
QR
|
||||
QR-Code
|
||||
QR-Code-Bereich
|
||||
QR-Code-Geheimnis
|
||||
QR-Code-Inhalt
|
||||
QR-Code-Reader
|
||||
QR-Codes
|
||||
QR-Farbe
|
||||
Query-Parameter
|
||||
rabattiert
|
||||
Rabattiert
|
||||
Rabattierung
|
||||
Reader
|
||||
Rechnungs
|
||||
Rechnungs-E-Mail
|
||||
Rechungsdatei
|
||||
Reddit
|
||||
Referer
|
||||
Registrierungs
|
||||
Registrierungsdatum
|
||||
Registrierungs-Details
|
||||
Registrierungsnummer
|
||||
Registrierungsversuche
|
||||
remote
|
||||
Renderer
|
||||
Request
|
||||
Requests
|
||||
Request-URL
|
||||
Reservierungszeitraum
|
||||
reverse
|
||||
Reverse
|
||||
Reverse-Proxy
|
||||
Revisionssicherheit
|
||||
Revolut
|
||||
Revolut-App
|
||||
rückabgewickelt
|
||||
Rundungsdifferenzen
|
||||
Sa
|
||||
Saalplan
|
||||
Sammlungsstücken
|
||||
SAQ
|
||||
SCA
|
||||
Scan
|
||||
Scanning-Apps
|
||||
Scans
|
||||
Scanergebnis
|
||||
Scanning
|
||||
Scan-Terminals
|
||||
Scan-Typ
|
||||
Scan-Zeitpunkt
|
||||
schiefgeht
|
||||
schiefgelaufen
|
||||
Scope
|
||||
@@ -304,23 +378,37 @@ SdI
|
||||
sechsstelligen
|
||||
Secret
|
||||
Security
|
||||
Selling
|
||||
SEPA
|
||||
Shirts
|
||||
selbst-gehostete
|
||||
SEPA-Bankeinzug
|
||||
SEPA-Bankkonto
|
||||
SEPA-Konten
|
||||
SEPA-Lastschrift
|
||||
SEPA-Lastschriften
|
||||
SEPA-Mandat
|
||||
SEPA-XML
|
||||
Session-ID
|
||||
Signaturverfahren
|
||||
Sign
|
||||
Single-Sign-On
|
||||
Single-Sign-On-Dienste
|
||||
Single-Sign-On-Methode
|
||||
Single-Sign-On-Provider
|
||||
Sitzplanmoduls
|
||||
Social
|
||||
Sofort
|
||||
SOFORT
|
||||
Sitzplatz-ID
|
||||
Sitzplatz-IDs
|
||||
Social-Media-Bild
|
||||
Sorry
|
||||
Source
|
||||
SPF
|
||||
Source-Codes
|
||||
SPF-Eintrag
|
||||
SSL
|
||||
SSO
|
||||
SSO-Client
|
||||
SSO-Clients
|
||||
SSO-Provider
|
||||
STARTTLS
|
||||
Steuer-Aufteilungsliste
|
||||
Steuerregel-ID
|
||||
Steuerschuldnerschaft
|
||||
Store
|
||||
Stornierungsanfrage
|
||||
Stornobedingungen
|
||||
Stornobeleg
|
||||
@@ -330,58 +418,75 @@ Stornogebühren
|
||||
Stornos
|
||||
Strg
|
||||
Stripe
|
||||
Stripes
|
||||
Stripe-Account
|
||||
Stripe-App
|
||||
Stripe-Dashboard
|
||||
Stripe-Konto
|
||||
Stripe-Kontos
|
||||
Stripe-Modul
|
||||
Stripe-Support
|
||||
Stripe-Test-API
|
||||
Strong
|
||||
Swish
|
||||
Synchronisations
|
||||
systemweiten
|
||||
Tab
|
||||
tag
|
||||
Teammitglied
|
||||
Teamname
|
||||
Teilnehmer-Badges
|
||||
Telephone
|
||||
Terminal-ID
|
||||
Termin-ID
|
||||
Ticketing
|
||||
Timeout
|
||||
To
|
||||
Tokengenerator
|
||||
Toolbar
|
||||
Ticketing-Firma
|
||||
Ticket-Output
|
||||
Ticket-QR-Code
|
||||
TODO
|
||||
To-Do-Liste
|
||||
TOTP
|
||||
Trace
|
||||
Trace-Nummer
|
||||
Tracking
|
||||
transaktionale
|
||||
Trustly
|
||||
Turnover
|
||||
T-Shirts
|
||||
Turnover-Nummer
|
||||
TWINT
|
||||
txt
|
||||
überbuchen
|
||||
überbucht
|
||||
überbuchten
|
||||
überzahlt
|
||||
Überzahlt
|
||||
ÜBERZAHLT
|
||||
überzahlte
|
||||
Überzahlte
|
||||
Überzahlten
|
||||
uhrzeit
|
||||
UID
|
||||
UID-Basis
|
||||
UID-Schutzfunktion
|
||||
Ultralight
|
||||
umzubuchen
|
||||
ungespeicherte
|
||||
unkategorisiert
|
||||
Unkategorisiert
|
||||
Unkategorisierte
|
||||
unlöschbar
|
||||
unlöschbaren
|
||||
untenstehende
|
||||
untenstehenden
|
||||
unterzahlt
|
||||
Unterzahlt
|
||||
UNTERZAHLT
|
||||
unzugeordnete
|
||||
Unzugeordnete
|
||||
unzugeordneten
|
||||
umzubuchen
|
||||
URIs
|
||||
Ursprüngl
|
||||
USt
|
||||
Überweisungs
|
||||
Überzahlten
|
||||
USt-ID
|
||||
USt-ID-Nr
|
||||
USt-ID-Nummer
|
||||
Validierung
|
||||
Validierungsregeln
|
||||
Varianten-ID
|
||||
Venmo
|
||||
Veranstalterdomain
|
||||
Veranstaltereinstellungen
|
||||
@@ -394,39 +499,50 @@ Veranstalterseite
|
||||
Veranstalterübersicht
|
||||
veranstalterweiten
|
||||
Veranstaltungs
|
||||
Veranstalterdomain
|
||||
Veranstaltungs-Metadaten
|
||||
veranstaltungsweiten
|
||||
Verfügbarkeitsberechnung
|
||||
Verfügbarkeitsstatus
|
||||
Verkaufs-ID
|
||||
Verkkopankki
|
||||
Veröffentlichbarer
|
||||
VIP
|
||||
Verwendungszweck-Postfix
|
||||
VIP-Bereiches
|
||||
Warenkorb-ID
|
||||
Warenkorb-Timeout
|
||||
WebAuthn
|
||||
WebAuthn-Gerät
|
||||
WebAuthn-kompatibler
|
||||
WebAuthn-Token
|
||||
WebAuthn-Unterstützung
|
||||
Webhook
|
||||
Webhooks
|
||||
Weiterleitungs
|
||||
Webhook-Wiederholungsaufträge
|
||||
WeChat
|
||||
WeChat-Zahlung
|
||||
Weiterleitungs-URIs
|
||||
Weiterleitungs-URL
|
||||
Weiterleitungs-URLs
|
||||
WhatsApp
|
||||
Widget
|
||||
Widget-Code
|
||||
xlsx
|
||||
XXX
|
||||
XXXX
|
||||
XXXXX
|
||||
Yubikey
|
||||
Zahlungs
|
||||
Zahlungsbestätigungs
|
||||
Zahlungserinnerungs
|
||||
zahlungspflichtig
|
||||
Zahlungsplugins
|
||||
Zahlungsbestätigungs-E-Mail
|
||||
Zahlungserinnerungs-E-Mail
|
||||
Zahlungs-ID
|
||||
Zahlungspflichtig
|
||||
Zehnerkarten
|
||||
zeitbasiert
|
||||
Zeitbasiert
|
||||
Zeitslotbuchung
|
||||
Zimpler
|
||||
ZIP
|
||||
ZIP-Datei
|
||||
zubuchbaren
|
||||
zurückbuchen
|
||||
zurückgeleitet
|
||||
zurückwechseln
|
||||
zutrittsberechtigt
|
||||
ZVT-Terminal
|
||||
zzgl
|
||||
ZVT
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:36+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -344,68 +344,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -740,7 +740,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2024-12-22 00:00+0000\n"
|
||||
"Last-Translator: Dimitris Tsimpidis <tsimpidisd@gmail.com>\n"
|
||||
"Language-Team: Greek <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
@@ -361,14 +361,14 @@ msgstr "Όχι"
|
||||
msgid "close"
|
||||
msgstr "Κλείσιμο"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
#, fuzzy
|
||||
#| msgid "Cart expired"
|
||||
msgid "required"
|
||||
msgstr "Το καλάθι έληξε"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Your request has been queued on the server and will now be processed. "
|
||||
@@ -381,7 +381,7 @@ msgstr ""
|
||||
"επεξεργασία. Ανάλογα με το μέγεθος του συμβάντος σας, αυτό μπορεί να "
|
||||
"διαρκέσει μερικά λεπτά."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Your request has been queued on the server and will now be processed. "
|
||||
@@ -392,7 +392,7 @@ msgstr ""
|
||||
"επεξεργασία. Ανάλογα με το μέγεθος του συμβάντος σας, αυτό μπορεί να "
|
||||
"διαρκέσει μερικά λεπτά."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -402,14 +402,14 @@ msgstr ""
|
||||
"του. Αν αυτό διαρκεί περισσότερο από δύο λεπτά, επικοινωνήστε μαζί μας ή "
|
||||
"επιστρέψτε στο πρόγραμμα περιήγησής σας και δοκιμάστε ξανά."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Παρουσιάστηκε σφάλμα τύπου {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -417,14 +417,14 @@ msgstr ""
|
||||
"Αυτήν τη στιγμή δεν μπορούμε να φτάσουμε στο διακομιστή, αλλά συνεχίζουμε να "
|
||||
"προσπαθούμε. Τελευταίος κωδικός σφάλματος: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
#, fuzzy
|
||||
#| msgid "The request took to long. Please try again."
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Το αίτημα διήρκησε πολύ. Παρακαλώ προσπαθήστε ξανά."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -432,11 +432,11 @@ msgstr ""
|
||||
"Αυτήν τη στιγμή δεν μπορούμε να συνδεθούμε με το διακομιστή. Παρακαλώ "
|
||||
"προσπαθήστε ξανά. Κωδικός σφάλματος: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Επεξεργαζόμαστε το αίτημά σας …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -446,11 +446,11 @@ msgstr ""
|
||||
"περισσότερο από ένα λεπτό, ελέγξτε τη σύνδεσή σας στο διαδίκτυο και στη "
|
||||
"συνέχεια επαναλάβετε τη φόρτωση αυτής της σελίδας και δοκιμάστε ξανά."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Κλείσιμο μηνύματος"
|
||||
|
||||
@@ -820,7 +820,7 @@ msgstr "απο %(currency)s %(price)s"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -344,68 +344,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -740,7 +740,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-05-30 11:15+0000\n"
|
||||
"Last-Translator: CVZ-es <damien.bremont@casadevelazquez.org>\n"
|
||||
"Language-Team: Spanish <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
@@ -345,12 +345,12 @@ msgstr "No"
|
||||
msgid "close"
|
||||
msgstr "cerrar"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "campo requerido"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -358,11 +358,11 @@ msgstr ""
|
||||
"Su solicitud está siendo procesada. Esto puede tardar varios minutos, "
|
||||
"dependiendo del tamaño de su evento."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr "Su solicitud ha sido enviada al servidor y será procesada en breve."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -372,14 +372,14 @@ msgstr ""
|
||||
"Si toma más de dos minutos, por favor contáctenos o regrese a la página "
|
||||
"anterior en su navegador e intente de nuevo."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Ha ocurrido un error de tipo {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -387,12 +387,12 @@ msgstr ""
|
||||
"Ahora mismo no podemos contactar con el servidor, pero lo seguimos "
|
||||
"intentando. El último código de error fue: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "La solicitud ha tomado demasiado tiempo. Por favor, intente de nuevo."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -400,11 +400,11 @@ msgstr ""
|
||||
"Ahora mismo no podemos contactar con el servidor. Por favor, intente de "
|
||||
"nuevo. Código de error: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Estamos procesando su solicitud…"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -414,11 +414,11 @@ msgstr ""
|
||||
"minuto, por favor, revise su conexión a Internet, recargue la página e "
|
||||
"intente nuevamente."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr "Si tarda más de unos minutos, póngase en contacto con nosotros."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Cerrar mensaje"
|
||||
|
||||
@@ -768,7 +768,7 @@ msgstr "Obtienes %(currency)s %(price)s de vuelta"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "Por favor, ingrese el importe que el organizador puede quedarse."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Su hora local:"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-08-04 14:16+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
@@ -345,68 +345,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -741,7 +741,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -344,68 +344,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -740,7 +740,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2024-09-06 08:47+0000\n"
|
||||
"Last-Translator: Albizuri <oier@puntu.eus>\n"
|
||||
"Language-Team: Basque <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
@@ -345,12 +345,12 @@ msgstr "Ez"
|
||||
msgid "close"
|
||||
msgstr "itxi"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -358,11 +358,11 @@ msgstr ""
|
||||
"Zure eskaera prozesatzen ari dira. Gertaeraren tamainaren arabera, baliteke "
|
||||
"minutu batzuk behar izatea."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr "Zure eskaera zerbitzarian gorde da eta laster prozesatuko da."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -372,14 +372,14 @@ msgstr ""
|
||||
"Bi minutu baino gehiago irauten badu, mesedez, jarri gurekin harremanetan "
|
||||
"edo itzuli zure nabigatzailera eta saiatu berriro."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "{kode} motako errore bat gertatu da."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -387,12 +387,12 @@ msgstr ""
|
||||
"Orain bertan ezin gara zerbitzarira iritsi, baina saiatzen jarraitzen dugu. "
|
||||
"Azken errore-kodea: {kodea}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Gehiegi luzatu da eskaera. Mesedez, saiatu berriro."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -400,11 +400,11 @@ msgstr ""
|
||||
"Une honetan ezin gara zerbitzarira iritsi. Mesedez, saiatu berriro. Errore-"
|
||||
"kodea: {kodea}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Zure eskaera prozesatzen ari gara …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -414,11 +414,11 @@ msgstr ""
|
||||
"baino gehiago irauten badu, mesedez, berrikusi zure Interneteko konexioa eta "
|
||||
"gero kargatu berriro orri hau eta saiatu berriro."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Mezua itxi"
|
||||
|
||||
@@ -766,7 +766,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2021-11-10 05:00+0000\n"
|
||||
"Last-Translator: Jaakko Rinta-Filppula <jaakko@r-f.fi>\n"
|
||||
"Language-Team: Finnish <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
@@ -363,49 +363,49 @@ msgstr "Ei"
|
||||
msgid "close"
|
||||
msgstr "Sulje"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
#, fuzzy
|
||||
#| msgid "Cart expired"
|
||||
msgid "required"
|
||||
msgstr "Ostoskori on vanhentunut"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Tapahtui virhe. Virhekoodi: {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Pyyntö aikakatkaistiin. Ole hyvä ja yritä uudelleen."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -413,22 +413,22 @@ msgstr ""
|
||||
"Palvelimeen ei juuri nyt saatu yhteyttä. Ole hyvä ja yritä uudelleen. "
|
||||
"Virhekoodi: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Pyyntöäsi käsitellään …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Sulje viesti"
|
||||
|
||||
@@ -783,7 +783,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -344,68 +344,68 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -740,7 +740,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: French\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-08-28 23:00+0000\n"
|
||||
"Last-Translator: CVZ-es <damien.bremont@casadevelazquez.org>\n"
|
||||
"Language-Team: French <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
@@ -344,12 +344,12 @@ msgstr "Non"
|
||||
msgid "close"
|
||||
msgstr "fermer"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "obligatoire"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -357,13 +357,13 @@ msgstr ""
|
||||
"Votre demande est maintenant en cours de traitement. Selon la taille de "
|
||||
"votre événement, cela peut prendre jusqu' à quelques minutes."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
"Votre demande a été mise en attente sur le serveur et sera traitée "
|
||||
"prochainement."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -373,14 +373,14 @@ msgstr ""
|
||||
"prend plus de deux minutes, veuillez nous contacter ou retourner dans votre "
|
||||
"navigateur et réessayer."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Une erreur de type {code} s'est produite."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -388,12 +388,12 @@ msgstr ""
|
||||
"Nous ne pouvons actuellement pas atteindre le serveur, mais nous continuons "
|
||||
"d'essayer. Dernier code d'erreur : {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "La requête a prit trop de temps. Veuillez réessayer."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -401,11 +401,11 @@ msgstr ""
|
||||
"Actuellement, nous ne pouvons pas atteindre le serveur. Veuillez réessayer. "
|
||||
"Code d'erreur : {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Nous traitons votre demande …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -415,11 +415,11 @@ msgstr ""
|
||||
"d'une minute, veuillez vérifier votre connexion Internet, puis recharger "
|
||||
"cette page et réessayer."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr "Si cela prend plus de quelques minutes, veuillez nous contacter."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Fermer le message"
|
||||
|
||||
@@ -768,7 +768,7 @@ msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
"Veuillez indiquer le montant que l'organisateur est autorisé à retenir."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Votre heure locale :"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2022-02-22 22:00+0000\n"
|
||||
"Last-Translator: Ismael Menéndez Fernández <ismael.menendez@balidea.com>\n"
|
||||
"Language-Team: Galician <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
@@ -351,12 +351,12 @@ msgstr "Non"
|
||||
msgid "close"
|
||||
msgstr "cerrar"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "campo requirido"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -364,11 +364,11 @@ msgstr ""
|
||||
"A súa solicitude estase procesando. Isto pode tardar varios minutos, "
|
||||
"dependendo do tamaño do seu evento."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr "A súa solicitude foi enviada ao servidor e será procesada en breve."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -378,14 +378,14 @@ msgstr ""
|
||||
"procesada. Se tarda máis de dous minutos, por favor, contacte con nós ou "
|
||||
"volva á páxina anterior no seu navegador e inténteo de novo."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Ocurreu un error de tipo {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -393,12 +393,12 @@ msgstr ""
|
||||
"Agora mesmo non podemos contactar co servidor, pero seguímolo intentando. O "
|
||||
"último código de erro foi: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "A petición levou demasiado tempo. Inténteo de novo."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -406,11 +406,11 @@ msgstr ""
|
||||
"Agora mesmo non podemos contactar co servidor. Por favor, inténteo de novo. "
|
||||
"Código de erro: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Estamos procesando a súa solicitude…"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -420,11 +420,11 @@ msgstr ""
|
||||
"dun minuto, por favor, revise a súa conexión a Internet, recargue a páxina e "
|
||||
"inténteo de novo."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Cerrar mensaxe"
|
||||
|
||||
@@ -791,7 +791,7 @@ msgstr "Obtés %(currency)s %(price)s de volta"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "Por favor, ingrese a cantidade que pode conservar o organizador."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "A súa hora local:"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2021-09-24 13:54+0000\n"
|
||||
"Last-Translator: ofirtro <ofir.tro@gmail.com>\n"
|
||||
"Language-Team: Hebrew <https://translate.pretix.eu/projects/pretix/pretix-js/"
|
||||
@@ -350,22 +350,22 @@ msgstr ""
|
||||
msgid "close"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr "הבקשה שלך מתבצעת ויכולה לקחת כמה דקות בהתאם לגודל האירוע."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr "הבקשה שלך תבוצע בהקדם."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -374,46 +374,46 @@ msgstr ""
|
||||
"הבקשה שלך הגיעה לשרת אבל עדיין לא התחילה. אם זה לוקח יותר משתי דקות, אנא צור "
|
||||
"איתנו קשר או נסה שנית."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "שגיאה {code} התרחשה."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr "אנחנו לא מצליחים לגשת לשרת, אבל ממשיכים לנסות. שגיאה אחרונה: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "הבקשה לקחה יותר מידי זמן. נסה שנית."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr "אירעה שגיאה. אנא נסה שנית. שגיאה: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "הבקשה שלך מתבצעת…"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -754,7 +754,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-03-16 10:17+0000\n"
|
||||
"Last-Translator: Robert Rigo <kontakt@bicikli.hr>\n"
|
||||
"Language-Team: Croatian <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
@@ -346,68 +346,68 @@ msgstr "Ne"
|
||||
msgid "close"
|
||||
msgstr "zatvori"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
"browser and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
"page and try again."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr ""
|
||||
|
||||
@@ -743,7 +743,7 @@ msgstr ""
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2024-11-28 06:00+0000\n"
|
||||
"Last-Translator: Patrick Chilton <chpatrick@gmail.com>\n"
|
||||
"Language-Team: Hungarian <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
@@ -360,14 +360,14 @@ msgstr "Nem"
|
||||
msgid "close"
|
||||
msgstr "Bezárás"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
#, fuzzy
|
||||
#| msgid "Cart expired"
|
||||
msgid "required"
|
||||
msgstr "A kosár lejárt"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Your request has been queued on the server and will now be processed. "
|
||||
@@ -379,7 +379,7 @@ msgstr ""
|
||||
"A kérés várólistára került a kiszolgálón, és hamarosan feldolgozásra kerül. "
|
||||
"Az esemény méretétől függően ez akár néhány percet is igénybe vehet."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "Your request has been queued on the server and will now be processed. "
|
||||
@@ -389,7 +389,7 @@ msgstr ""
|
||||
"A kérés várólistára került a kiszolgálón, és hamarosan feldolgozásra kerül. "
|
||||
"Az esemény méretétől függően ez akár néhány percet is igénybe vehet."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -399,14 +399,14 @@ msgstr ""
|
||||
"folyamat két percnél hosszabb ideg tart, kérjük vegye fel velünk a "
|
||||
"kapcsolatot, vagy lépjen vissza a böngészőjében és próbálja újra."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "{code} típusú hiba jelentkezett."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -414,23 +414,23 @@ msgstr ""
|
||||
"Jelen pillanatban a kiszolgáló nem elérhető, de továbbra is próbálkozunk. "
|
||||
"Utolsó hibakód: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "A kérés időtúllépés miatt leállt. Kérjük próbálja újra."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
"Jelen pillanatban a kiszolgáló nem elérhető. Próbálja újra. Hibakód: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "A kérés feldolgozása folyamatban…"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -440,11 +440,11 @@ msgstr ""
|
||||
"hosszabb időt vesz igénybe, kérjük ellenőrizze az internetkapcsolatát, "
|
||||
"frissítse az oldalt és próbálkozzon újra."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Üzenet bezárása"
|
||||
|
||||
@@ -813,7 +813,7 @@ msgstr "%(currency) %(price)-tól"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2023-09-20 14:01+0000\n"
|
||||
"Last-Translator: Mahdia Aliyy <mahdlyy.k@gmail.com>\n"
|
||||
"Language-Team: Indonesian <https://translate.pretix.eu/projects/pretix/"
|
||||
@@ -349,12 +349,12 @@ msgstr "Tidak"
|
||||
msgid "close"
|
||||
msgstr "menutup"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "diperlukan"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -362,13 +362,13 @@ msgstr ""
|
||||
"Permintaan Anda sedang diproses. Tergantung pada besarnya acara Anda, proses "
|
||||
"ini mungkin memerlukan waktu hingga beberapa menit."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
"Permintaan Anda telah dimasukkan ke dalam antrian di server dan akan segera "
|
||||
"diproses."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -378,14 +378,14 @@ msgstr ""
|
||||
"diproses. Jika proses ini memerlukan waktu lebih dari dua menit, harap "
|
||||
"hubungi kami atau kembali ke browser Anda dan coba lagi."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Terjadi kesalahan jenis {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -393,12 +393,12 @@ msgstr ""
|
||||
"Saat ini kami tidak dapat menjangkau server, tetapi kami terus mencoba. Kode "
|
||||
"kesalahan terakhir: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "Permintaan terlalu lama. Silakan coba lagi."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -406,11 +406,11 @@ msgstr ""
|
||||
"Saat ini kami tidak dapat menjangkau server. Silakan coba lagi. Kode "
|
||||
"kesalahan: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Kami sedang memproses permintaan Anda …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -420,11 +420,11 @@ msgstr ""
|
||||
"lebih dari satu menit, silakan periksa koneksi internet Anda lalu muat ulang "
|
||||
"halaman ini dan coba lagi."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Tutup pesan"
|
||||
|
||||
@@ -787,7 +787,7 @@ msgstr "Anda mendapatkan %(currency)s %(amount)s kembali"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "Silakan masukkan jumlah yang dapat disimpan oleh penyelenggara."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Waktu setempat Anda:"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-05-05 09:40+0000\n"
|
||||
"Last-Translator: \"Luca Martinelli [Sannita]\" <sannita@gmail.com>\n"
|
||||
"Language-Team: Italian <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
@@ -348,12 +348,12 @@ msgstr "No"
|
||||
msgid "close"
|
||||
msgstr "Chiudi"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "richiesta"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -361,11 +361,11 @@ msgstr ""
|
||||
"La tua richiesta è in fase di elaborazione. A seconda della dimensione del "
|
||||
"tuo evento, questo passaggio può durare fino ad alcuni minuti."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr "La tua richiesta è stata inviata al server e verrà presto elaborata."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -375,14 +375,14 @@ msgstr ""
|
||||
"elaborazione. Se l'attesa dura più a lungo di due minuti di ti invitiamo a "
|
||||
"contattarci o di tornare al browser e riprovare."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "Si è verificato un errore {code}."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
@@ -390,12 +390,12 @@ msgstr ""
|
||||
"Al momento il server non è raggiungibile, ma continueremo a provare. Codice "
|
||||
"dell'ultimo errore: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "La richiesta ha impiegato troppo tempo. Si prega di riprovare."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
@@ -403,11 +403,11 @@ msgstr ""
|
||||
"Al momento il server non è raggiungibile. Si prega di riprovare. Codice "
|
||||
"dell'errore: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "Stiamo elaborando la tua richiesta …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -417,11 +417,11 @@ msgstr ""
|
||||
"più di un minuto si prega di verificare la connessione internet e ricaricare "
|
||||
"la pagina per riprovare l'invio."
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "Messaggio di chiusura"
|
||||
|
||||
@@ -785,7 +785,7 @@ msgstr "Ricevi indietro %(currency)s %(amount)s"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "Inserisci l'importo che l'organizzatore può trattenere."
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "Ora locale:"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,17 +7,17 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-08-19 16:02+0000\n"
|
||||
"PO-Revision-Date: 2025-08-24 16:00+0000\n"
|
||||
"Last-Translator: Yasunobu YesNo Kawaguchi <kawaguti@gmail.com>\n"
|
||||
"Language-Team: Japanese <https://translate.pretix.eu/projects/pretix/"
|
||||
"pretix-js/ja/>\n"
|
||||
"POT-Creation-Date: 2025-09-26 11:16+0000\n"
|
||||
"PO-Revision-Date: 2025-09-25 03:00+0000\n"
|
||||
"Last-Translator: Hijiri Umemoto <hijiri@umemoto.org>\n"
|
||||
"Language-Team: Japanese <https://translate.pretix.eu/projects/pretix/pretix-"
|
||||
"js/ja/>\n"
|
||||
"Language: ja\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 5.13\n"
|
||||
"X-Generator: Weblate 5.13.3\n"
|
||||
|
||||
#: pretix/plugins/banktransfer/static/pretixplugins/banktransfer/ui.js:56
|
||||
#: pretix/plugins/banktransfer/static/pretixplugins/banktransfer/ui.js:62
|
||||
@@ -64,7 +64,7 @@ msgstr "iDEAL"
|
||||
|
||||
#: pretix/plugins/paypal2/static/pretixplugins/paypal2/pretix-paypal.js:42
|
||||
msgid "SEPA Direct Debit"
|
||||
msgstr "SEPA Direct Debit"
|
||||
msgstr "SEPA ダイレクトデビット"
|
||||
|
||||
#: pretix/plugins/paypal2/static/pretixplugins/paypal2/pretix-paypal.js:43
|
||||
msgid "Bancontact"
|
||||
@@ -327,7 +327,7 @@ msgstr "有効なチケット"
|
||||
|
||||
#: pretix/plugins/webcheckin/static/pretixplugins/webcheckin/main.js:70
|
||||
msgid "Currently inside"
|
||||
msgstr "現在オンラインです"
|
||||
msgstr "現在入場中"
|
||||
|
||||
#: pretix/plugins/webcheckin/static/pretixplugins/webcheckin/main.js:71
|
||||
#: pretix/static/pretixcontrol/js/ui/question.js:136
|
||||
@@ -345,12 +345,12 @@ msgstr "いいえ"
|
||||
msgid "close"
|
||||
msgstr "閉じる"
|
||||
|
||||
#: pretix/static/pretixbase/js/addressform.js:105
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:509
|
||||
#: pretix/static/pretixbase/js/addressform.js:90
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:519
|
||||
msgid "required"
|
||||
msgstr "必須"
|
||||
msgstr "必要"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:12
|
||||
#: pretix/static/pretixbase/js/asynctask.js:13
|
||||
msgid ""
|
||||
"Your request is currently being processed. Depending on the size of your "
|
||||
"event, this might take up to a few minutes."
|
||||
@@ -358,12 +358,12 @@ msgstr ""
|
||||
"お客様のリクエストは現在処理中です。イベントの規模により、数分かかる場合があ"
|
||||
"ります。"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:16
|
||||
#: pretix/static/pretixbase/js/asynctask.js:17
|
||||
msgid "Your request has been queued on the server and will soon be processed."
|
||||
msgstr ""
|
||||
"サーバへ送信されたリクエスト順にお応えしています。今しばらくお待ちください。"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:20
|
||||
#: pretix/static/pretixbase/js/asynctask.js:21
|
||||
msgid ""
|
||||
"Your request arrived on the server but we still wait for it to be processed. "
|
||||
"If this takes longer than two minutes, please contact us or go back in your "
|
||||
@@ -373,37 +373,37 @@ msgstr ""
|
||||
"経っても応答がない場合は、弊社へお問い合わせいただくか、ブラウザを一つ前に戻"
|
||||
"して再度お試しください。"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:119
|
||||
#: pretix/static/pretixbase/js/asynctask.js:176
|
||||
#: pretix/static/pretixbase/js/asynctask.js:180
|
||||
#: pretix/static/pretixbase/js/asynctask.js:125
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:186
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:24
|
||||
msgid "An error of type {code} occurred."
|
||||
msgstr "{code} のエラーが発生しました。"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:122
|
||||
#: pretix/static/pretixbase/js/asynctask.js:128
|
||||
msgid ""
|
||||
"We currently cannot reach the server, but we keep trying. Last error code: "
|
||||
"{code}"
|
||||
msgstr ""
|
||||
"現在サーバへの接続ができませんが、接続試行中です。エラーコード: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:156
|
||||
#: pretix/static/pretixbase/js/asynctask.js:162
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:21
|
||||
msgid "The request took too long. Please try again."
|
||||
msgstr "リクエストの時間切れです。再試行してください。"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:182
|
||||
#: pretix/static/pretixbase/js/asynctask.js:188
|
||||
#: pretix/static/pretixcontrol/js/ui/mail.js:26
|
||||
msgid ""
|
||||
"We currently cannot reach the server. Please try again. Error code: {code}"
|
||||
msgstr ""
|
||||
"現在サーバが応答していません。再試行してください。エラーコード: {code}"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:210
|
||||
#: pretix/static/pretixbase/js/asynctask.js:216
|
||||
msgid "We are processing your request …"
|
||||
msgstr "リクエストを処理中です …"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:213
|
||||
#: pretix/static/pretixbase/js/asynctask.js:219
|
||||
msgid ""
|
||||
"We are currently sending your request to the server. If this takes longer "
|
||||
"than one minute, please check your internet connection and then reload this "
|
||||
@@ -413,11 +413,11 @@ msgstr ""
|
||||
"ターネット接続を確認してください。確認完了後、ウェブページを再度読込み、再試"
|
||||
"行してください。"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:270
|
||||
#: pretix/static/pretixbase/js/asynctask.js:276
|
||||
msgid "If this takes longer than a few minutes, please contact us."
|
||||
msgstr "数分以上かかる場合は、お問い合わせください。"
|
||||
|
||||
#: pretix/static/pretixbase/js/asynctask.js:325
|
||||
#: pretix/static/pretixbase/js/asynctask.js:331
|
||||
msgid "Close message"
|
||||
msgstr "閉じる"
|
||||
|
||||
@@ -644,8 +644,9 @@ msgstr ""
|
||||
msgid ""
|
||||
"Your color has insufficient contrast to white. Accessibility of your site "
|
||||
"will be impacted."
|
||||
msgstr "あなたの色は白に対して十分なコントラストがありません。サイトのアクセシビリテ"
|
||||
"ィに影響します。"
|
||||
msgstr ""
|
||||
"あなたの色は白に対して十分なコントラストがありません。サイトのアクセシビリ"
|
||||
"ティに影響します。"
|
||||
|
||||
#: pretix/static/pretixcontrol/js/ui/main.js:417
|
||||
#: pretix/static/pretixcontrol/js/ui/main.js:437
|
||||
@@ -698,7 +699,7 @@ msgstr "その他"
|
||||
|
||||
#: pretix/static/pretixcontrol/js/ui/question.js:81
|
||||
msgid "Count"
|
||||
msgstr "総数"
|
||||
msgstr "カウント"
|
||||
|
||||
#: pretix/static/pretixcontrol/js/ui/subevent.js:111
|
||||
msgid "(one more date)"
|
||||
@@ -759,7 +760,7 @@ msgstr "%(currency)s %(amount)s が払い戻されます"
|
||||
msgid "Please enter the amount the organizer can keep."
|
||||
msgstr "主催者が留保する料金を入力してください。"
|
||||
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:554
|
||||
#: pretix/static/pretixpresale/js/ui/main.js:564
|
||||
msgid "Your local time:"
|
||||
msgstr "現地時間:"
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user