forked from CGM_Public/pretix_original
Compare commits
37 Commits
language-s
...
reldatetim
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2fe2500ba | ||
|
|
13aee2b3bb | ||
|
|
ba9d0823c7 | ||
|
|
87768a2b74 | ||
|
|
ff6b4ae7bf | ||
|
|
6b5fd07535 | ||
|
|
7a423ebead | ||
|
|
62c028d9ac | ||
|
|
57f5eeff82 | ||
|
|
d92e82a133 | ||
|
|
5704142fe1 | ||
|
|
8c5768912c | ||
|
|
934567c811 | ||
|
|
b16f54fad9 | ||
|
|
5dcd1f229b | ||
|
|
40e4f8a05a | ||
|
|
8d9295a628 | ||
|
|
063e1e16a3 | ||
|
|
b5733a433d | ||
|
|
454354f148 | ||
|
|
8480f45997 | ||
|
|
b909b0b4bd | ||
|
|
c4b45b7d95 | ||
|
|
3ce6030122 | ||
|
|
28e26284a6 | ||
|
|
aaf1b7776e | ||
|
|
d545b15d0d | ||
|
|
0a334d1c67 | ||
|
|
1a2fb688de | ||
|
|
c1333d6edb | ||
|
|
e3e432a9e4 | ||
|
|
36ea18970b | ||
|
|
bde2d50828 | ||
|
|
e8334df908 | ||
|
|
c8943785d7 | ||
|
|
41b878b667 | ||
|
|
4f63ba967b |
@@ -72,7 +72,7 @@ dependencies = [
|
||||
"packaging",
|
||||
"paypalrestsdk==1.13.*",
|
||||
"paypal-checkout-serversdk==1.0.*",
|
||||
"PyJWT==2.9.*",
|
||||
"PyJWT==2.10.*",
|
||||
"phonenumberslite==8.13.*",
|
||||
"Pillow==11.1.*",
|
||||
"pretix-plugin-build",
|
||||
|
||||
@@ -94,6 +94,7 @@ ALL_LANGUAGES = [
|
||||
('el', _('Greek')),
|
||||
('id', _('Indonesian')),
|
||||
('it', _('Italian')),
|
||||
('ja', _('Japanese')),
|
||||
('lv', _('Latvian')),
|
||||
('nb-no', _('Norwegian Bokmål')),
|
||||
('pl', _('Polish')),
|
||||
|
||||
@@ -619,7 +619,7 @@ class QuotaViewSet(ConditionalListView, viewsets.ModelViewSet):
|
||||
def availability(self, request, *args, **kwargs):
|
||||
quota = self.get_object()
|
||||
|
||||
qa = QuotaAvailability()
|
||||
qa = QuotaAvailability(full_results=True)
|
||||
qa.queue(quota)
|
||||
qa.compute()
|
||||
avail = qa.results[quota]
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
# Generated by Django 4.2.17 on 2025-01-13 14:55
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("pretixbase", "0274_tax_codes"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="question",
|
||||
name="valid_number_max",
|
||||
field=models.DecimalField(decimal_places=6, max_digits=30, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="question",
|
||||
name="valid_number_min",
|
||||
field=models.DecimalField(decimal_places=6, max_digits=30, null=True),
|
||||
),
|
||||
]
|
||||
@@ -1718,10 +1718,10 @@ class Question(LoggedModel):
|
||||
'Question', null=True, blank=True, on_delete=models.SET_NULL, related_name='dependent_questions'
|
||||
)
|
||||
dependency_values = MultiStringField(default=[])
|
||||
valid_number_min = models.DecimalField(decimal_places=6, max_digits=16, null=True, blank=True,
|
||||
valid_number_min = models.DecimalField(decimal_places=6, max_digits=30, null=True, blank=True,
|
||||
verbose_name=_('Minimum value'),
|
||||
help_text=_('Currently not supported in our apps and during check-in'))
|
||||
valid_number_max = models.DecimalField(decimal_places=6, max_digits=16, null=True, blank=True,
|
||||
valid_number_max = models.DecimalField(decimal_places=6, max_digits=30, null=True, blank=True,
|
||||
verbose_name=_('Maximum value'),
|
||||
help_text=_('Currently not supported in our apps and during check-in'))
|
||||
valid_date_min = models.DateField(null=True, blank=True,
|
||||
|
||||
@@ -1087,7 +1087,7 @@ class Order(LockModel, LoggedModel):
|
||||
|
||||
for i, op in enumerate(positions):
|
||||
if op.seat:
|
||||
if not op.seat.is_available(ignore_orderpos=op):
|
||||
if not op.seat.is_available(ignore_orderpos=op, sales_channel=self.sales_channel.identifier):
|
||||
raise Quota.QuotaExceededException(error_messages['seat_unavailable'].format(seat=op.seat))
|
||||
if force:
|
||||
continue
|
||||
|
||||
@@ -185,43 +185,104 @@ BEFORE_AFTER_CHOICE = (
|
||||
)
|
||||
|
||||
|
||||
reldatetimeparts = namedtuple('reldatetimeparts', (
|
||||
"status", # 0
|
||||
"absolute", # 1
|
||||
"rel_days_number", # 2
|
||||
"rel_mins_relationto", # 3
|
||||
"rel_days_timeofday", # 4
|
||||
"rel_mins_number", # 5
|
||||
"rel_days_relationto", # 6
|
||||
"rel_mins_relation", # 7
|
||||
"rel_days_relation" # 8
|
||||
))
|
||||
reldatetimeparts.indizes = reldatetimeparts(*range(9))
|
||||
|
||||
|
||||
class RelativeDateTimeWidget(forms.MultiWidget):
|
||||
template_name = 'pretixbase/forms/widgets/reldatetime.html'
|
||||
parts = reldatetimeparts
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.status_choices = kwargs.pop('status_choices')
|
||||
base_choices = kwargs.pop('base_choices')
|
||||
widgets = (
|
||||
forms.RadioSelect(choices=self.status_choices),
|
||||
forms.DateTimeInput(
|
||||
widgets = reldatetimeparts(
|
||||
status=forms.RadioSelect(choices=self.status_choices),
|
||||
absolute=forms.DateTimeInput(
|
||||
attrs={'class': 'datetimepicker'}
|
||||
),
|
||||
forms.NumberInput(),
|
||||
forms.Select(choices=base_choices),
|
||||
forms.TimeInput(attrs={'placeholder': _('Time'), 'class': 'timepickerfield'}),
|
||||
forms.NumberInput(),
|
||||
forms.Select(choices=base_choices),
|
||||
forms.Select(choices=BEFORE_AFTER_CHOICE),
|
||||
forms.Select(choices=BEFORE_AFTER_CHOICE),
|
||||
rel_days_number=forms.NumberInput(),
|
||||
rel_mins_relationto=forms.Select(choices=base_choices),
|
||||
rel_days_timeofday=forms.TimeInput(attrs={'placeholder': _('Time'), 'class': 'timepickerfield'}),
|
||||
rel_mins_number=forms.NumberInput(),
|
||||
rel_days_relationto=forms.Select(choices=base_choices),
|
||||
rel_mins_relation=forms.Select(choices=BEFORE_AFTER_CHOICE),
|
||||
rel_days_relation=forms.Select(choices=BEFORE_AFTER_CHOICE),
|
||||
)
|
||||
super().__init__(widgets=widgets, *args, **kwargs)
|
||||
|
||||
def decompress(self, value):
|
||||
if isinstance(value, str):
|
||||
value = RelativeDateWrapper.from_string(value)
|
||||
if isinstance(value, reldatetimeparts):
|
||||
return value
|
||||
if not value:
|
||||
return ['unset', None, 1, 'date_from', None, 0, "date_from", "before", "before"]
|
||||
return reldatetimeparts(
|
||||
status="unset",
|
||||
absolute=None,
|
||||
rel_days_number=1,
|
||||
rel_mins_relationto="date_from",
|
||||
rel_days_timeofday=None,
|
||||
rel_mins_number=0,
|
||||
rel_days_relationto="date_from",
|
||||
rel_mins_relation="before",
|
||||
rel_days_relation="before"
|
||||
)
|
||||
elif isinstance(value.data, (datetime.datetime, datetime.date)):
|
||||
return ['absolute', value.data, 1, 'date_from', None, 0, "date_from", "before", "before"]
|
||||
return reldatetimeparts(
|
||||
status="absolute",
|
||||
absolute=value.data,
|
||||
rel_days_number=1,
|
||||
rel_mins_relationto="date_from",
|
||||
rel_days_timeofday=None,
|
||||
rel_mins_number=0,
|
||||
rel_days_relationto="date_from",
|
||||
rel_mins_relation="before",
|
||||
rel_days_relation="before"
|
||||
)
|
||||
elif value.data.minutes is not None:
|
||||
return ['relative_minutes', None, None, value.data.base_date_name, None, value.data.minutes, value.data.base_date_name,
|
||||
"after" if value.data.is_after else "before", "after" if value.data.is_after else "before"]
|
||||
return ['relative', None, value.data.days, value.data.base_date_name, value.data.time, 0, value.data.base_date_name,
|
||||
"after" if value.data.is_after else "before", "after" if value.data.is_after else "before"]
|
||||
return reldatetimeparts(
|
||||
status="relative_minutes",
|
||||
absolute=None,
|
||||
rel_days_number=None,
|
||||
rel_mins_relationto=value.data.base_date_name,
|
||||
rel_days_timeofday=None,
|
||||
rel_mins_number=value.data.minutes,
|
||||
rel_days_relationto=value.data.base_date_name,
|
||||
rel_mins_relation="after" if value.data.is_after else "before",
|
||||
rel_days_relation="after" if value.data.is_after else "before"
|
||||
)
|
||||
return reldatetimeparts(
|
||||
status="relative",
|
||||
absolute=None,
|
||||
rel_days_number=value.data.days,
|
||||
rel_mins_relationto=value.data.base_date_name,
|
||||
rel_days_timeofday=value.data.time,
|
||||
rel_mins_number=0,
|
||||
rel_days_relationto=value.data.base_date_name,
|
||||
rel_mins_relation="after" if value.data.is_after else "before",
|
||||
rel_days_relation="after" if value.data.is_after else "before"
|
||||
)
|
||||
|
||||
def get_context(self, name, value, attrs):
|
||||
ctx = super().get_context(name, value, attrs)
|
||||
ctx['required'] = self.status_choices[0][0] == 'unset'
|
||||
|
||||
ctx['rendered_subwidgets'] = self.parts(*(
|
||||
self._render(w['template_name'], {**ctx, 'widget': w})
|
||||
for w in ctx['widget']['subwidgets']
|
||||
))._asdict()
|
||||
|
||||
return ctx
|
||||
|
||||
|
||||
@@ -239,36 +300,36 @@ class RelativeDateTimeField(forms.MultiValueField):
|
||||
choices = BASE_CHOICES
|
||||
if not kwargs.get('required', True):
|
||||
status_choices.insert(0, ('unset', _('Not set')))
|
||||
fields = (
|
||||
forms.ChoiceField(
|
||||
fields = reldatetimeparts(
|
||||
status=forms.ChoiceField(
|
||||
choices=status_choices,
|
||||
required=True
|
||||
),
|
||||
forms.DateTimeField(
|
||||
absolute=forms.DateTimeField(
|
||||
required=False
|
||||
),
|
||||
forms.IntegerField(
|
||||
rel_days_number=forms.IntegerField(
|
||||
required=False
|
||||
),
|
||||
forms.ChoiceField(
|
||||
rel_mins_relationto=forms.ChoiceField(
|
||||
choices=choices,
|
||||
required=False
|
||||
),
|
||||
forms.TimeField(
|
||||
rel_days_timeofday=forms.TimeField(
|
||||
required=False,
|
||||
),
|
||||
forms.IntegerField(
|
||||
rel_mins_number=forms.IntegerField(
|
||||
required=False
|
||||
),
|
||||
forms.ChoiceField(
|
||||
rel_days_relationto=forms.ChoiceField(
|
||||
choices=choices,
|
||||
required=False
|
||||
),
|
||||
forms.ChoiceField(
|
||||
rel_mins_relation=forms.ChoiceField(
|
||||
choices=BEFORE_AFTER_CHOICE,
|
||||
required=False
|
||||
),
|
||||
forms.ChoiceField(
|
||||
rel_days_relation=forms.ChoiceField(
|
||||
choices=BEFORE_AFTER_CHOICE,
|
||||
required=False
|
||||
),
|
||||
@@ -282,32 +343,36 @@ class RelativeDateTimeField(forms.MultiValueField):
|
||||
)
|
||||
|
||||
def set_event(self, event):
|
||||
self.widget.widgets[3].choices = [
|
||||
self.widget.widgets[reldatetimeparts.indizes.rel_days_relationto].choices = [
|
||||
(k, v) for k, v in BASE_CHOICES if getattr(event, k, None)
|
||||
]
|
||||
self.widget.widgets[reldatetimeparts.indizes.rel_mins_relationto].choices = [
|
||||
(k, v) for k, v in BASE_CHOICES if getattr(event, k, None)
|
||||
]
|
||||
|
||||
def compress(self, data_list):
|
||||
if not data_list:
|
||||
return None
|
||||
if data_list[0] == 'absolute':
|
||||
return RelativeDateWrapper(data_list[1])
|
||||
elif data_list[0] == 'unset':
|
||||
data = reldatetimeparts(*data_list)
|
||||
if data.status == 'absolute':
|
||||
return RelativeDateWrapper(data.absolute)
|
||||
elif data.status == 'unset':
|
||||
return None
|
||||
elif data_list[0] == 'relative_minutes':
|
||||
elif data.status == 'relative_minutes':
|
||||
return RelativeDateWrapper(RelativeDate(
|
||||
days=0,
|
||||
base_date_name=data_list[3],
|
||||
base_date_name=data.rel_mins_relationto,
|
||||
time=None,
|
||||
minutes=data_list[5],
|
||||
is_after=data_list[7] == "after",
|
||||
minutes=data.rel_mins_number,
|
||||
is_after=data.rel_mins_relation == "after",
|
||||
))
|
||||
else:
|
||||
return RelativeDateWrapper(RelativeDate(
|
||||
days=data_list[2],
|
||||
base_date_name=data_list[6],
|
||||
time=data_list[4],
|
||||
days=data.rel_days_number,
|
||||
base_date_name=data.rel_days_relationto,
|
||||
time=data.rel_days_timeofday,
|
||||
minutes=None,
|
||||
is_after=data_list[8] == "after",
|
||||
is_after=data.rel_days_relation == "after",
|
||||
))
|
||||
|
||||
def has_changed(self, initial, data):
|
||||
@@ -316,29 +381,41 @@ class RelativeDateTimeField(forms.MultiValueField):
|
||||
return super().has_changed(initial, data)
|
||||
|
||||
def clean(self, value):
|
||||
if value[0] == 'absolute' and not value[1]:
|
||||
data = reldatetimeparts(*value)
|
||||
if data.status == 'absolute' and not data.absolute:
|
||||
raise ValidationError(self.error_messages['incomplete'])
|
||||
elif value[0] == 'relative' and (value[2] is None or not value[3]):
|
||||
elif data.status == 'relative' and (data.rel_days_number is None or not data.rel_days_relationto):
|
||||
raise ValidationError(self.error_messages['incomplete'])
|
||||
elif value[0] == 'relative_minutes' and (value[5] is None or not value[3]):
|
||||
elif data.status == 'relative_minutes' and (data.rel_mins_number is None or not data.rel_mins_relationto):
|
||||
raise ValidationError(self.error_messages['incomplete'])
|
||||
|
||||
return super().clean(value)
|
||||
|
||||
|
||||
reldateparts = namedtuple('reldateparts', (
|
||||
"status", # 0
|
||||
"absolute", # 1
|
||||
"rel_days_number", # 2
|
||||
"rel_days_relationto", # 3
|
||||
"rel_days_relation", # 4
|
||||
))
|
||||
reldateparts.indizes = reldateparts(*range(5))
|
||||
|
||||
|
||||
class RelativeDateWidget(RelativeDateTimeWidget):
|
||||
template_name = 'pretixbase/forms/widgets/reldate.html'
|
||||
parts = reldateparts
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.status_choices = kwargs.pop('status_choices')
|
||||
widgets = (
|
||||
forms.RadioSelect(choices=self.status_choices),
|
||||
forms.DateInput(
|
||||
widgets = reldateparts(
|
||||
status=forms.RadioSelect(choices=self.status_choices),
|
||||
absolute=forms.DateInput(
|
||||
attrs={'class': 'datepickerfield'}
|
||||
),
|
||||
forms.NumberInput(),
|
||||
forms.Select(choices=kwargs.pop('base_choices')),
|
||||
forms.Select(choices=BEFORE_AFTER_CHOICE),
|
||||
rel_days_number=forms.NumberInput(),
|
||||
rel_days_relationto=forms.Select(choices=kwargs.pop('base_choices')),
|
||||
rel_days_relation=forms.Select(choices=BEFORE_AFTER_CHOICE),
|
||||
)
|
||||
forms.MultiWidget.__init__(self, widgets=widgets, *args, **kwargs)
|
||||
|
||||
@@ -346,10 +423,30 @@ class RelativeDateWidget(RelativeDateTimeWidget):
|
||||
if isinstance(value, str):
|
||||
value = RelativeDateWrapper.from_string(value)
|
||||
if not value:
|
||||
return ['unset', None, 1, 'date_from', 'before']
|
||||
return reldateparts(
|
||||
status="unset",
|
||||
absolute=None,
|
||||
rel_days_number=1,
|
||||
rel_days_relationto="date_from",
|
||||
rel_days_relation="before"
|
||||
)
|
||||
if isinstance(value, reldateparts):
|
||||
return value
|
||||
elif isinstance(value.data, (datetime.datetime, datetime.date)):
|
||||
return ['absolute', value.data, 1, 'date_from', 'before']
|
||||
return ['relative', None, value.data.days, value.data.base_date_name, "after" if value.data.is_after else "before"]
|
||||
return reldateparts(
|
||||
status="absolute",
|
||||
absolute=value.data,
|
||||
rel_days_number=1,
|
||||
rel_days_relationto="date_from",
|
||||
rel_days_relation="before"
|
||||
)
|
||||
return reldateparts(
|
||||
status="relative",
|
||||
absolute=None,
|
||||
rel_days_number=value.data.days,
|
||||
rel_days_relationto=value.data.base_date_name,
|
||||
rel_days_relation="after" if value.data.is_after else "before"
|
||||
)
|
||||
|
||||
|
||||
class RelativeDateField(RelativeDateTimeField):
|
||||
@@ -361,22 +458,22 @@ class RelativeDateField(RelativeDateTimeField):
|
||||
]
|
||||
if not kwargs.get('required', True):
|
||||
status_choices.insert(0, ('unset', _('Not set')))
|
||||
fields = (
|
||||
forms.ChoiceField(
|
||||
fields = reldateparts(
|
||||
status=forms.ChoiceField(
|
||||
choices=status_choices,
|
||||
required=True
|
||||
),
|
||||
forms.DateField(
|
||||
absolute=forms.DateField(
|
||||
required=False
|
||||
),
|
||||
forms.IntegerField(
|
||||
rel_days_number=forms.IntegerField(
|
||||
required=False
|
||||
),
|
||||
forms.ChoiceField(
|
||||
rel_days_relationto=forms.ChoiceField(
|
||||
choices=BASE_CHOICES,
|
||||
required=False
|
||||
),
|
||||
forms.ChoiceField(
|
||||
rel_days_relation=forms.ChoiceField(
|
||||
choices=BEFORE_AFTER_CHOICE,
|
||||
required=False
|
||||
),
|
||||
@@ -387,28 +484,35 @@ class RelativeDateField(RelativeDateTimeField):
|
||||
self, fields=fields, require_all_fields=False, *args, **kwargs
|
||||
)
|
||||
|
||||
def set_event(self, event):
|
||||
self.widget.widgets[reldateparts.indizes.rel_days_relationto].choices = [
|
||||
(k, v) for k, v in BASE_CHOICES if getattr(event, k, None)
|
||||
]
|
||||
|
||||
def compress(self, data_list):
|
||||
if not data_list:
|
||||
return None
|
||||
if data_list[0] == 'absolute':
|
||||
return RelativeDateWrapper(data_list[1])
|
||||
elif data_list[0] == 'unset':
|
||||
data = reldateparts(*data_list)
|
||||
if data.status == 'absolute':
|
||||
return RelativeDateWrapper(data.absolute)
|
||||
elif data.status == 'unset':
|
||||
return None
|
||||
else:
|
||||
return RelativeDateWrapper(RelativeDate(
|
||||
days=data_list[2],
|
||||
base_date_name=data_list[3],
|
||||
days=data.rel_days_number,
|
||||
base_date_name=data.rel_days_relationto,
|
||||
time=None, minutes=None,
|
||||
is_after=data_list[4] == "after"
|
||||
is_after=data.rel_days_relation == "after"
|
||||
))
|
||||
|
||||
def clean(self, value):
|
||||
if value[0] == 'absolute' and not value[1]:
|
||||
data = reldateparts(*value)
|
||||
if data.status == 'absolute' and not data.absolute:
|
||||
raise ValidationError(self.error_messages['incomplete'])
|
||||
elif value[0] == 'relative' and (value[2] is None or not value[3]):
|
||||
elif data.status == 'relative' and (data.rel_days_number is None or not data.rel_days_relationto):
|
||||
raise ValidationError(self.error_messages['incomplete'])
|
||||
|
||||
return super().clean(value)
|
||||
return forms.MultiValueField.clean(self, value)
|
||||
|
||||
|
||||
class ModelRelativeDateTimeField(models.CharField):
|
||||
|
||||
@@ -3557,8 +3557,8 @@ PERSON_NAME_SCHEMES = OrderedDict([
|
||||
str(p) for p in [d.get('family_name', ''), d.get('given_name', '')] if p
|
||||
),
|
||||
'sample': {
|
||||
'given_name': '泽东',
|
||||
'family_name': '毛',
|
||||
'family_name': '孫',
|
||||
'given_name': '文',
|
||||
'_scheme': 'family_nospace_given',
|
||||
},
|
||||
}),
|
||||
@@ -3609,8 +3609,8 @@ PERSON_NAME_SCHEMES = OrderedDict([
|
||||
'concatenation': lambda d: str(d.get('full_name', '')),
|
||||
'concatenation_all_components': lambda d: str(d.get('full_name', '')) + " (" + d.get('latin_transcription', '') + ")",
|
||||
'sample': {
|
||||
'full_name': '庄司',
|
||||
'latin_transcription': 'Shōji',
|
||||
'full_name': '山田花子',
|
||||
'latin_transcription': 'Yamada Hanako',
|
||||
'_scheme': 'full_transcription',
|
||||
},
|
||||
}),
|
||||
@@ -3701,6 +3701,7 @@ COUNTRIES_WITH_STATE_IN_ADDRESS = {
|
||||
'BR': (['State'], 'short'),
|
||||
'CA': (['Province', 'Territory'], 'short'),
|
||||
# 'CN': (['Province', 'Autonomous region', 'Munincipality'], 'long'),
|
||||
'JP': (['Prefecture'], 'long'),
|
||||
'MY': (['State', 'Federal territory'], 'long'),
|
||||
'MX': (['State', 'Federal district'], 'short'),
|
||||
'US': (['State', 'Outlying area', 'District'], 'short'),
|
||||
|
||||
@@ -9,12 +9,11 @@
|
||||
{{ selopt.label }}
|
||||
</label>
|
||||
{% if selopt.value == "absolute" %}
|
||||
{% include widget.subwidgets.1.template_name with widget=widget.subwidgets.1 %}
|
||||
{{ rendered_subwidgets.absolute }}
|
||||
{% elif selopt.value == "relative" %}
|
||||
{% include widget.subwidgets.2.template_name with widget=widget.subwidgets.2 %}
|
||||
{% trans "days" %}
|
||||
{% include widget.subwidgets.4.template_name with widget=widget.subwidgets.4 %}
|
||||
{% include widget.subwidgets.3.template_name with widget=widget.subwidgets.3 %}
|
||||
{% blocktrans trimmed with number=rendered_subwidgets.rel_days_number relation=rendered_subwidgets.rel_days_relation relation_to=rendered_subwidgets.rel_days_relationto %}
|
||||
{{ number }} days {{ relation }} {{ relation_to }}
|
||||
{% endblocktrans %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
@@ -9,19 +9,15 @@
|
||||
{{ selopt.label }}
|
||||
</label>
|
||||
{% if selopt.value == "absolute" %}
|
||||
{% include widget.subwidgets.1.template_name with widget=widget.subwidgets.1 %}
|
||||
{{ rendered_subwidgets.absolute }}
|
||||
{% elif selopt.value == "relative_minutes" %}
|
||||
{% include widget.subwidgets.5.template_name with widget=widget.subwidgets.5 %}
|
||||
{% trans "minutes" %}
|
||||
{% include widget.subwidgets.7.template_name with widget=widget.subwidgets.7 %}
|
||||
{% include widget.subwidgets.3.template_name with widget=widget.subwidgets.3 %}
|
||||
{% blocktrans trimmed with number=rendered_subwidgets.rel_mins_number relation=rendered_subwidgets.rel_mins_relation relation_to=rendered_subwidgets.rel_mins_relationto %}
|
||||
{{ number }} minutes {{ relation }} {{ relation_to }}
|
||||
{% endblocktrans %}
|
||||
{% elif selopt.value == "relative" %}
|
||||
{% include widget.subwidgets.2.template_name with widget=widget.subwidgets.2 %}
|
||||
{% trans "days" %}
|
||||
{% include widget.subwidgets.8.template_name with widget=widget.subwidgets.8 %}
|
||||
{% include widget.subwidgets.6.template_name with widget=widget.subwidgets.6 %}
|
||||
{% trans "at" %}
|
||||
{% include widget.subwidgets.4.template_name with widget=widget.subwidgets.4 %}
|
||||
{% blocktrans trimmed with number=rendered_subwidgets.rel_days_number relation=rendered_subwidgets.rel_days_relation relation_to=rendered_subwidgets.rel_days_relationto time_of_day=rendered_subwidgets.rel_days_timeofday %}
|
||||
{{ number }} days {{ relation }} {{ relation_to }} at {{ time_of_day }}
|
||||
{% endblocktrans %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
@@ -4,8 +4,8 @@ msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2024-11-04 13:44+0000\n"
|
||||
"Last-Translator: Katrine Tella <ktl@hjoerring.dk>\n"
|
||||
"PO-Revision-Date: 2025-01-14 09:56+0000\n"
|
||||
"Last-Translator: Nikolai <nikolai@lengefeldt.de>\n"
|
||||
"Language-Team: Danish <https://translate.pretix.eu/projects/pretix/pretix/da/"
|
||||
">\n"
|
||||
"Language: da\n"
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 5.8.1\n"
|
||||
"X-Generator: Weblate 5.9.2\n"
|
||||
|
||||
#: pretix/_base_settings.py:79
|
||||
msgid "English"
|
||||
@@ -20841,7 +20841,7 @@ msgstr "Nej, gå tilbage"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/order/approve.html:25
|
||||
msgid "Yes, approve order"
|
||||
msgstr "Ja, annullér bestilling"
|
||||
msgstr "Ja, godkend bestilling"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/order/cancel.html:6
|
||||
#: pretix/control/templates/pretixcontrol/order/cancel.html:10
|
||||
|
||||
@@ -5,8 +5,8 @@ msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2024-12-16 16:15+0000\n"
|
||||
"Last-Translator: Raphael Michel <michel@rami.io>\n"
|
||||
"PO-Revision-Date: 2025-01-10 10:00+0000\n"
|
||||
"Last-Translator: Martin Gross <gross@rami.io>\n"
|
||||
"Language-Team: German <https://translate.pretix.eu/projects/pretix/pretix/de/"
|
||||
">\n"
|
||||
"Language: de\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 5.8.4\n"
|
||||
"X-Generator: Weblate 5.9.2\n"
|
||||
"X-Poedit-Bookmarks: -1,-1,904,-1,-1,-1,-1,-1,-1,-1\n"
|
||||
|
||||
#: pretix/_base_settings.py:79
|
||||
@@ -19542,7 +19542,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Wenn Sie komplexere Funktionen wie zusätzliche Produkte, Produktvarianten "
|
||||
"oder freie Kontingentstrukturen nutzen wollen, können Sie dies später über "
|
||||
"den Konfigurationsbereich \"Produkte\" in der linken Navigationsleiste tun. "
|
||||
"den Konfigurationsbereich „Produkte“ in der linken Navigationsleiste tun. "
|
||||
"Keine Sorge, alles was Sie hier eingeben, können Sie später noch ändern."
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/quick_setup.html:132
|
||||
@@ -32366,7 +32366,7 @@ msgstr "Wir versuchen nun, diese Zusatzprodukte für Sie zu buchen!"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_addons.html:28
|
||||
msgid "Additional options for"
|
||||
msgstr "Zusätzliche Einstellungen für"
|
||||
msgstr "Zusätzliche Optionen für"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_addons.html:64
|
||||
msgid "More recommendations"
|
||||
|
||||
@@ -8,8 +8,8 @@ msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2024-12-16 16:28+0000\n"
|
||||
"Last-Translator: Raphael Michel <michel@rami.io>\n"
|
||||
"PO-Revision-Date: 2025-01-10 10:00+0000\n"
|
||||
"Last-Translator: Martin Gross <gross@rami.io>\n"
|
||||
"Language-Team: German (informal) <https://translate.pretix.eu/projects/"
|
||||
"pretix/pretix/de_Informal/>\n"
|
||||
"Language: de_Informal\n"
|
||||
@@ -17,7 +17,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 5.8.4\n"
|
||||
"X-Generator: Weblate 5.9.2\n"
|
||||
|
||||
#: pretix/_base_settings.py:79
|
||||
msgid "English"
|
||||
@@ -19511,7 +19511,7 @@ msgstr ""
|
||||
"Wenn du komplexere Funktionen wie zusätzliche Produkte, Produktvarianten "
|
||||
"oder freie Kontingentstrukturen nutzen willst, kannst du dies später über "
|
||||
"den Konfigurationsbereich \"Produkte\" in der linken Navigationsleiste tun. "
|
||||
"Keine Sorge, alles was du hier gibst, kannst du später noch ändern."
|
||||
"Keine Sorge, alles was du hier eingibst, kannst du später noch ändern."
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/quick_setup.html:132
|
||||
#: pretix/control/views/event.py:357
|
||||
@@ -19524,7 +19524,7 @@ msgid ""
|
||||
"your event, but if you're in a hurry and want to get started quickly, here's "
|
||||
"a short version:"
|
||||
msgstr ""
|
||||
"Wir empfehlen, dass du dich die Zeit nimmst und die Einstellungen deiner "
|
||||
"Wir empfehlen, dass du dir die Zeit nimmst und die Einstellungen deiner "
|
||||
"Veranstaltungen in Ruhe durchgehst. Wenn du aber schnell loslegen willst, "
|
||||
"ist hier die Kurzversion:"
|
||||
|
||||
@@ -32309,7 +32309,7 @@ msgstr "Wir versuchen nun, diese Zusatzprodukte für dich zu buchen!"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_addons.html:28
|
||||
msgid "Additional options for"
|
||||
msgstr "Zusätzliche Einstellungen für"
|
||||
msgstr "Zusätzliche Optionen für"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_addons.html:64
|
||||
msgid "More recommendations"
|
||||
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2025-01-03 14:22+0000\n"
|
||||
"PO-Revision-Date: 2025-01-04 19:00+0000\n"
|
||||
"Last-Translator: Hector <hector@demandaeventos.es>\n"
|
||||
"Language-Team: Spanish <https://translate.pretix.eu/projects/pretix/pretix/"
|
||||
"es/>\n"
|
||||
@@ -500,19 +500,19 @@ msgstr "Pago confirmado"
|
||||
|
||||
#: pretix/api/webhooks.py:305
|
||||
msgid "Order approved"
|
||||
msgstr "Perdido aprobado"
|
||||
msgstr "Pedido aprobado"
|
||||
|
||||
#: pretix/api/webhooks.py:309
|
||||
msgid "Order denied"
|
||||
msgstr "Perdido denegado"
|
||||
msgstr "Pedido denegado"
|
||||
|
||||
#: pretix/api/webhooks.py:313
|
||||
msgid "Order deleted"
|
||||
msgstr "Perdido borrado"
|
||||
msgstr "Pedido eliminado"
|
||||
|
||||
#: pretix/api/webhooks.py:317
|
||||
msgid "Ticket checked in"
|
||||
msgstr "Entrada comprobada"
|
||||
msgstr "Entrada escaneada"
|
||||
|
||||
#: pretix/api/webhooks.py:321
|
||||
msgid "Ticket check-in reverted"
|
||||
@@ -533,7 +533,7 @@ msgstr "Evento eliminado"
|
||||
#: pretix/api/webhooks.py:337
|
||||
msgctxt "subevent"
|
||||
msgid "Event series date added"
|
||||
msgstr "Fecha de inicio de la serie de eventos creada"
|
||||
msgstr "Fechas de la serie de eventos añadidas"
|
||||
|
||||
#: pretix/api/webhooks.py:341
|
||||
msgctxt "subevent"
|
||||
@@ -571,15 +571,15 @@ msgstr "Modo de pruebas de la tienda ha sido desactivado"
|
||||
|
||||
#: pretix/api/webhooks.py:370
|
||||
msgid "Waiting list entry added"
|
||||
msgstr "Agregado a la lista de espera"
|
||||
msgstr "Elemento agregado a la lista de espera"
|
||||
|
||||
#: pretix/api/webhooks.py:374
|
||||
msgid "Waiting list entry changed"
|
||||
msgstr "Entrada a la lista de espera"
|
||||
msgstr "Elemento de la lista de espera cambiado"
|
||||
|
||||
#: pretix/api/webhooks.py:378
|
||||
msgid "Waiting list entry deleted"
|
||||
msgstr "Entrada a la lista de espera eliminada"
|
||||
msgstr "Elemento de la lista de espera eliminado"
|
||||
|
||||
#: pretix/api/webhooks.py:382
|
||||
msgid "Waiting list entry received voucher"
|
||||
@@ -612,11 +612,11 @@ msgstr "Este campo es obligatorio."
|
||||
|
||||
#: pretix/base/addressvalidation.py:213
|
||||
msgid "Enter a postal code in the format XXX."
|
||||
msgstr "Ingresa el código postal en el formato XXX."
|
||||
msgstr "Ingresa el código postal en el formato XXXXX."
|
||||
|
||||
#: pretix/base/addressvalidation.py:222 pretix/base/addressvalidation.py:224
|
||||
msgid "Enter a postal code in the format XXXX."
|
||||
msgstr "Ingresa un código postal en el formato XXX."
|
||||
msgstr "Ingresa un código postal en el formato XXXXX."
|
||||
|
||||
#: pretix/base/auth.py:146
|
||||
#, python-brace-format
|
||||
@@ -657,7 +657,7 @@ msgstr "Contraseña"
|
||||
|
||||
#: pretix/base/auth.py:176 pretix/base/auth.py:183
|
||||
msgid "Your password must contain both numeric and alphabetic characters."
|
||||
msgstr "Su contraseña debe contener caracteres numéricos y alfabéticos."
|
||||
msgstr "Su contraseña debe contener caracteres alfanuméricos."
|
||||
|
||||
#: pretix/base/auth.py:202 pretix/base/auth.py:212
|
||||
#, python-format
|
||||
@@ -689,7 +689,7 @@ msgstr ""
|
||||
#: pretix/base/context.py:45
|
||||
#, python-brace-format
|
||||
msgid "powered by {name} based on <a {a_attr}>pretix</a>"
|
||||
msgstr "hecho posible por {name} basado en <a {a_attr}>pretix</a>"
|
||||
msgstr "desarrollado por {name} basado en <a {a_attr}>pretix</a>"
|
||||
|
||||
#: pretix/base/context.py:52
|
||||
#, python-format
|
||||
@@ -703,7 +703,7 @@ msgstr "Código fuente"
|
||||
#: pretix/base/customersso/oidc.py:61
|
||||
#, python-brace-format
|
||||
msgid "Configuration option \"{name}\" is missing."
|
||||
msgstr "La opción de configuración \"{name}\" no existe."
|
||||
msgstr "La opción de configuración \"{name}\" falta."
|
||||
|
||||
#: pretix/base/customersso/oidc.py:69 pretix/base/customersso/oidc.py:74
|
||||
#, python-brace-format
|
||||
@@ -723,7 +723,7 @@ msgstr "Proveedor SSO incompatible: \"{error}\"."
|
||||
#: pretix/base/customersso/oidc.py:111
|
||||
#, python-brace-format
|
||||
msgid "You are not requesting \"{scope}\"."
|
||||
msgstr "No esta solicitando \"{scope}\"."
|
||||
msgstr "No estas solicitando \"{scope}\"."
|
||||
|
||||
#: pretix/base/customersso/oidc.py:117
|
||||
#, python-brace-format
|
||||
@@ -731,8 +731,8 @@ msgid ""
|
||||
"You are requesting scope \"{scope}\" but provider only supports these: "
|
||||
"{scopes}."
|
||||
msgstr ""
|
||||
"Está solicitando el scope \"{scope}\", pero el proveedor solo admite estos: "
|
||||
"{scopes}."
|
||||
"Estás solicitando la funcionalidad \"{scope}\", pero el proveedor solo "
|
||||
"admite estos: {scopes}."
|
||||
|
||||
#: pretix/base/customersso/oidc.py:127
|
||||
#, python-brace-format
|
||||
@@ -740,7 +740,7 @@ msgid ""
|
||||
"You are requesting field \"{field}\" but provider only supports these: "
|
||||
"{fields}."
|
||||
msgstr ""
|
||||
"Está solicitando el campo \"{field}\", pero el proveedor solo admite estos: "
|
||||
"Estás solicitando el campo \"{field}\", pero el proveedor solo admite estos: "
|
||||
"{fields}."
|
||||
|
||||
#: pretix/base/customersso/oidc.py:137
|
||||
@@ -759,7 +759,7 @@ msgstr ""
|
||||
#: pretix/presale/views/customer.py:862
|
||||
#, python-brace-format
|
||||
msgid "Login was not successful. Error message: \"{error}\"."
|
||||
msgstr "El inicio de sesión no fue exitoso. Mensaje de error: \"{error}\"."
|
||||
msgstr "El inicio de sesión no tuvo éxito. Mensaje de error: \"{error}\"."
|
||||
|
||||
#: pretix/base/customersso/oidc.py:236
|
||||
msgid ""
|
||||
@@ -810,7 +810,7 @@ msgstr "Excel combinado (.xlsx)"
|
||||
|
||||
#: pretix/base/exporters/answers.py:54
|
||||
msgid "Question answer file uploads"
|
||||
msgstr "Cargas de archivos de respuestas a preguntas"
|
||||
msgstr "Subida de archivo de preguntas y respuestas"
|
||||
|
||||
#: pretix/base/exporters/answers.py:55 pretix/base/exporters/json.py:52
|
||||
#: pretix/base/exporters/mail.py:53 pretix/base/exporters/orderlist.py:87
|
||||
@@ -893,12 +893,12 @@ msgstr "Todas las fechas"
|
||||
#: pretix/base/exporters/customers.py:49 pretix/control/navigation.py:606
|
||||
#: pretix/control/templates/pretixcontrol/organizers/edit.html:132
|
||||
msgid "Customer accounts"
|
||||
msgstr "Cuenta de cliente"
|
||||
msgstr "Cuentas de clientes"
|
||||
|
||||
#: pretix/base/exporters/customers.py:51
|
||||
msgctxt "export_category"
|
||||
msgid "Customer accounts"
|
||||
msgstr "Cuenta de cliente"
|
||||
msgstr "Cuentas de clientes"
|
||||
|
||||
#: pretix/base/exporters/customers.py:52
|
||||
msgid "Download a spreadsheet of all currently registered customer accounts."
|
||||
@@ -912,7 +912,7 @@ msgstr ""
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_customer.html:36
|
||||
#: pretix/presale/templates/pretixpresale/organizers/customer_base.html:37
|
||||
msgid "Customer ID"
|
||||
msgstr "ID Cliente"
|
||||
msgstr "ID de cliente"
|
||||
|
||||
#: pretix/base/exporters/customers.py:65
|
||||
#: pretix/control/templates/pretixcontrol/organizers/customer.html:32
|
||||
@@ -1109,7 +1109,7 @@ msgstr ""
|
||||
#: pretix/base/exporters/dekodi.py:105
|
||||
#, python-brace-format
|
||||
msgid "Event ticket {event}-{code}"
|
||||
msgstr "Entrada para evento {event}-{code}"
|
||||
msgstr "Entrada para el evento {event}-{code}"
|
||||
|
||||
#: pretix/base/exporters/dekodi.py:234 pretix/base/exporters/invoices.py:74
|
||||
#: pretix/base/exporters/orderlist.py:128
|
||||
@@ -1204,12 +1204,12 @@ msgstr "Hora de admisión"
|
||||
#: pretix/base/exporters/events.py:65 pretix/base/models/event.py:598
|
||||
#: pretix/base/models/event.py:1484 pretix/control/forms/subevents.py:93
|
||||
msgid "Start of presale"
|
||||
msgstr "Inicio de preventa"
|
||||
msgstr "Inicio de la preventa"
|
||||
|
||||
#: pretix/base/exporters/events.py:66 pretix/base/models/event.py:592
|
||||
#: pretix/base/models/event.py:1478 pretix/control/forms/subevents.py:99
|
||||
msgid "End of presale"
|
||||
msgstr "Finalización de preventa"
|
||||
msgstr "Finalización de la preventa"
|
||||
|
||||
#: pretix/base/exporters/events.py:67 pretix/base/exporters/invoices.py:351
|
||||
#: pretix/base/models/event.py:604 pretix/base/models/event.py:1490
|
||||
@@ -1219,7 +1219,7 @@ msgstr "Ubicación"
|
||||
#: pretix/base/exporters/events.py:68 pretix/base/models/event.py:607
|
||||
#: pretix/base/models/event.py:1493
|
||||
msgid "Latitude"
|
||||
msgstr "Lalitud"
|
||||
msgstr "Latitud"
|
||||
|
||||
#: pretix/base/exporters/events.py:69 pretix/base/models/event.py:615
|
||||
#: pretix/base/models/event.py:1501
|
||||
@@ -1246,7 +1246,7 @@ msgstr "Comentario interno"
|
||||
#: pretix/control/templates/pretixcontrol/orders/refunds.html:50
|
||||
#: pretix/control/templates/pretixcontrol/search/payments.html:93
|
||||
msgid "Payment provider"
|
||||
msgstr "Proveedor de pagos"
|
||||
msgstr "Proveedor de pago"
|
||||
|
||||
#: pretix/base/exporters/invoices.py:84 pretix/base/exporters/invoices.py:86
|
||||
#: pretix/control/forms/filter.py:206 pretix/control/forms/filter.py:1020
|
||||
@@ -1272,7 +1272,7 @@ msgstr "Todas las facturas"
|
||||
#: pretix/base/exporters/invoices.py:127
|
||||
msgid "Download all invoices created by the system as a ZIP file of PDF files."
|
||||
msgstr ""
|
||||
"Descargue todas las facturas creadas por el sistema como un archivo ZIP de "
|
||||
"Descargue todas las facturas creadas por el sistema en un archivo ZIP de "
|
||||
"archivos PDF."
|
||||
|
||||
#: pretix/base/exporters/invoices.py:178
|
||||
@@ -1446,7 +1446,7 @@ msgstr "País"
|
||||
|
||||
#: pretix/base/exporters/invoices.py:211 pretix/base/exporters/invoices.py:337
|
||||
msgid "Tax ID"
|
||||
msgstr "IVA-ID"
|
||||
msgstr "CIF"
|
||||
|
||||
#: pretix/base/exporters/invoices.py:212 pretix/base/exporters/invoices.py:220
|
||||
#: pretix/base/exporters/invoices.py:338 pretix/base/exporters/invoices.py:346
|
||||
@@ -1490,7 +1490,7 @@ msgstr "Destinatario de la factura:"
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_confirm.html:83
|
||||
#: pretix/presale/templates/pretixpresale/event/order.html:307
|
||||
msgid "Company"
|
||||
msgstr "Compañía"
|
||||
msgstr "Empresa"
|
||||
|
||||
#: pretix/base/exporters/invoices.py:215 pretix/base/exporters/invoices.py:341
|
||||
msgid "Street address"
|
||||
@@ -4567,13 +4567,13 @@ msgstr "Transacción manual"
|
||||
#, python-format
|
||||
msgctxt "invoice"
|
||||
msgid "Tax ID: %s"
|
||||
msgstr "IVA-ID: %s"
|
||||
msgstr "CIF: %s"
|
||||
|
||||
#: pretix/base/models/invoices.py:191 pretix/base/services/invoices.py:139
|
||||
#, python-format
|
||||
msgctxt "invoice"
|
||||
msgid "VAT-ID: %s"
|
||||
msgstr "IVA-ID: %s"
|
||||
msgstr "CIF: %s"
|
||||
|
||||
#: pretix/base/models/items.py:93
|
||||
msgid "Category name"
|
||||
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2025-01-02 07:00+0000\n"
|
||||
"PO-Revision-Date: 2025-01-11 21:00+0000\n"
|
||||
"Last-Translator: Hijiri Umemoto <hijiri@umemoto.org>\n"
|
||||
"Language-Team: Japanese <https://translate.pretix.eu/projects/pretix/pretix/"
|
||||
"ja/>\n"
|
||||
@@ -539,7 +539,7 @@ msgstr ""
|
||||
|
||||
#: pretix/api/webhooks.py:354
|
||||
msgid "Shop taken live"
|
||||
msgstr "ショップが営業中になりました"
|
||||
msgstr "ショップが公開中になりました"
|
||||
|
||||
#: pretix/api/webhooks.py:358
|
||||
msgid "Shop taken offline"
|
||||
@@ -2012,7 +2012,7 @@ msgstr "税率{rate}%での税金"
|
||||
#: pretix/base/exporters/orderlist.py:276
|
||||
#, python-brace-format
|
||||
msgid "Net at {rate} % tax"
|
||||
msgstr "税率{rate}%のネット"
|
||||
msgstr "税率{rate}%の税抜価格"
|
||||
|
||||
#: pretix/base/exporters/orderlist.py:277
|
||||
#, python-brace-format
|
||||
@@ -2713,7 +2713,7 @@ msgstr "全て"
|
||||
|
||||
#: pretix/base/exporters/orderlist.py:1306 pretix/control/forms/filter.py:1417
|
||||
msgid "Live"
|
||||
msgstr "営業中"
|
||||
msgstr "公開中"
|
||||
|
||||
#: pretix/base/exporters/orderlist.py:1315 pretix/control/forms/filter.py:1425
|
||||
#: pretix/control/templates/pretixcontrol/pdf/index.html:252
|
||||
@@ -3268,7 +3268,7 @@ msgstr "税率"
|
||||
#: pretix/base/invoice.py:623
|
||||
msgctxt "invoice"
|
||||
msgid "Net"
|
||||
msgstr "ネット"
|
||||
msgstr "税抜"
|
||||
|
||||
#: pretix/base/invoice.py:624
|
||||
msgctxt "invoice"
|
||||
@@ -3320,7 +3320,7 @@ msgstr "残高"
|
||||
#: pretix/base/invoice.py:769
|
||||
msgctxt "invoice"
|
||||
msgid "Net value"
|
||||
msgstr "純資産価値"
|
||||
msgstr "税抜価格"
|
||||
|
||||
#: pretix/base/invoice.py:770
|
||||
msgctxt "invoice"
|
||||
@@ -3362,7 +3362,7 @@ msgstr "デフォルトの請求書レンダラー(ヨーロッパスタイル
|
||||
#: pretix/base/invoice.py:947
|
||||
msgctxt "invoice"
|
||||
msgid "(Please quote at all times.)"
|
||||
msgstr "(すべてのアイテムについて見積もりをしてください。)"
|
||||
msgstr "(問い合わせ時には、この番号をお知らせください。)"
|
||||
|
||||
#: pretix/base/invoice.py:994
|
||||
msgid "Simplified invoice renderer"
|
||||
@@ -3667,7 +3667,7 @@ msgstr "タグ"
|
||||
|
||||
#: pretix/base/modelimport_vouchers.py:334 pretix/base/models/vouchers.py:297
|
||||
msgid "Shows hidden products that match this voucher"
|
||||
msgstr "このクーポンに適合する非表示の商品を表示します\\"
|
||||
msgstr "このクーポンに適合する隠された商品を表示する"
|
||||
|
||||
#: pretix/base/modelimport_vouchers.py:343 pretix/base/models/vouchers.py:301
|
||||
msgid "Offer all add-on products for free when redeeming this voucher"
|
||||
@@ -4336,7 +4336,7 @@ msgid ""
|
||||
"If checked, an event can only be taken live if the property is set. In event "
|
||||
"series, its always optional to set a value for individual dates"
|
||||
msgstr ""
|
||||
"チェックされているとき、プロパティが設定されている場合にのみ、イベントを営業"
|
||||
"チェックされているとき、プロパティが設定されている場合にのみ、イベントを公開"
|
||||
"中にすることができます。イベントシリーズでは、個々の日付に値を設定することは"
|
||||
"常にオプションです"
|
||||
|
||||
@@ -4552,7 +4552,7 @@ msgstr "アドオンカテゴリ"
|
||||
|
||||
#: pretix/base/models/items.py:222 pretix/base/models/items.py:278
|
||||
msgid "Disable product for this date"
|
||||
msgstr "この日付の製品を無効にしてください"
|
||||
msgstr "この日付の製品を無効にする"
|
||||
|
||||
#: pretix/base/models/items.py:226 pretix/base/models/items.py:282
|
||||
#: pretix/base/models/items.py:560
|
||||
@@ -4588,7 +4588,7 @@ msgstr "申し訳ございません。情報が利用できません"
|
||||
|
||||
#: pretix/base/models/items.py:452 pretix/base/models/items.py:772
|
||||
msgid "Don't use re-usable media, use regular one-off tickets"
|
||||
msgstr "再利用可能なメディアを使用せず、通常の一回切りのチケットを使用してください"
|
||||
msgstr "再利用可能なメディアを使用せず、通常の一回限りのチケットを使用してください"
|
||||
|
||||
#: pretix/base/models/items.py:453
|
||||
msgid "Require an existing medium to be re-used"
|
||||
@@ -4678,11 +4678,11 @@ msgstr "このイベントで待ちリストが有効になっている場合の
|
||||
#: pretix/base/models/items.py:544 pretix/base/settings.py:1350
|
||||
#: pretix/control/forms/event.py:1677
|
||||
msgid "Show number of tickets left"
|
||||
msgstr "チケットの残り枚数を表示します"
|
||||
msgstr "チケットの残り枚数を表示する"
|
||||
|
||||
#: pretix/base/models/items.py:545
|
||||
msgid "Publicly show how many tickets are still available."
|
||||
msgstr "公に利用可能なチケットの数を表示してください。"
|
||||
msgstr "利用可能なチケットの残数を公表します。"
|
||||
|
||||
#: pretix/base/models/items.py:552 pretix/control/forms/item.py:622
|
||||
msgid "Product picture"
|
||||
@@ -4822,7 +4822,7 @@ msgstr ""
|
||||
|
||||
#: pretix/base/models/items.py:672
|
||||
msgid "Only sell tickets for this product on the selected sales channels."
|
||||
msgstr "この製品のチケットは選択した販売チャネルでのみ販売してください。"
|
||||
msgstr "この製品のチケットは選択した販売チャネルでのみ販売します。"
|
||||
|
||||
#: pretix/base/models/items.py:677
|
||||
msgid ""
|
||||
@@ -5362,7 +5362,7 @@ msgstr "総容量"
|
||||
|
||||
#: pretix/base/models/items.py:2036 pretix/control/forms/item.py:448
|
||||
msgid "Leave empty for an unlimited number of tickets."
|
||||
msgstr "チケットの数に制限はありません。"
|
||||
msgstr "空欄にすると、チケットの数が無制限になります。"
|
||||
|
||||
#: pretix/base/models/items.py:2040 pretix/base/models/orders.py:1487
|
||||
#: pretix/base/models/orders.py:2982
|
||||
@@ -5638,7 +5638,7 @@ msgstr "支払い済みの注文"
|
||||
|
||||
#: pretix/base/models/orders.py:418
|
||||
msgid "canceled (paid fee)"
|
||||
msgstr "キャンセル(料金支払い済み)"
|
||||
msgstr "キャンセル済み(支払い済み手数料)"
|
||||
|
||||
#: pretix/base/models/orders.py:1031
|
||||
msgid ""
|
||||
@@ -6245,11 +6245,11 @@ msgid ""
|
||||
"option after consulting a tax counsel. No warranty given for correct tax "
|
||||
"calculation. USE AT YOUR OWN RISK."
|
||||
msgstr ""
|
||||
"非推奨です。ほとんどのイベントは逆転納税の対象とならないため、課税の場所はイ"
|
||||
"ベントの場所となります。このオプションを有効にすると、EU外のすべての顧客およ"
|
||||
"び有効なEUのVAT番号を入力した異なるEU諸国の事業顧客に対してVATを請求しません"
|
||||
"。税務顧問と相談した後にのみこのオプションを有効にしてください。正しい税金の"
|
||||
"計算については保証されません。自己責任でご利用ください。"
|
||||
"非推奨です。ほとんどのイベントはリバースチャージ制度の対象とならず、イベント"
|
||||
"の場所が課税の場所となります。このオプションを有効にすると、EU外のすべての顧"
|
||||
"客および有効なEUのVAT番号を入力した異なるEU諸国の事業顧客に対してVATを請求し"
|
||||
"ません。税務顧問と相談した後にのみこのオプションを有効にしてください。正しい"
|
||||
"税金の計算については保証されません。自己責任でご利用ください。"
|
||||
|
||||
#: pretix/base/models/tax.py:374 pretix/plugins/stripe/payment.py:299
|
||||
msgid "Merchant country"
|
||||
@@ -6362,8 +6362,8 @@ msgstr "このバウチャーが有効になると、影響を受ける製品の
|
||||
msgid ""
|
||||
"If activated, a holder of this voucher code can buy tickets, even if there "
|
||||
"are none left."
|
||||
msgstr "このバウチャーコードを持っている人は、有効になった場合でも、チケットを購入す"
|
||||
"ることができます。"
|
||||
msgstr "このバウチャーコードを持っている人は、売り切れた場合でも、チケットを購入する"
|
||||
"ことができます。"
|
||||
|
||||
#: pretix/base/models/vouchers.py:254 pretix/control/forms/vouchers.py:69
|
||||
msgid ""
|
||||
@@ -6587,7 +6587,7 @@ msgstr "購入した製品"
|
||||
#: pretix/base/services/placeholders.py:393
|
||||
#: pretix/base/templates/pretixbase/email/order_details.html:147
|
||||
msgid "View order details"
|
||||
msgstr "注文の詳細を表示します"
|
||||
msgstr "注文の詳細を表示する"
|
||||
|
||||
#: pretix/base/notifications.py:234
|
||||
#, python-brace-format
|
||||
@@ -6655,7 +6655,7 @@ msgstr "払い戻しをリクエストしました"
|
||||
#: pretix/base/notifications.py:300
|
||||
#, python-brace-format
|
||||
msgid "You have been requested to issue a refund for {order.code}."
|
||||
msgstr "{order.code}の返金手続きを依頼されました。"
|
||||
msgstr "{order.code}の返金手続きがリクエストされました。"
|
||||
|
||||
#: pretix/base/payment.py:86
|
||||
msgctxt "payment"
|
||||
@@ -7048,7 +7048,7 @@ msgstr "アドオンを含む価格"
|
||||
#: pretix/base/services/placeholders.py:669
|
||||
#: pretix/base/services/placeholders.py:678 pretix/control/views/event.py:797
|
||||
msgid "John Doe"
|
||||
msgstr "John Doe"
|
||||
msgstr "山田 太郎"
|
||||
|
||||
#: pretix/base/pdf.py:177
|
||||
#: pretix/control/templates/pretixcontrol/order/index.html:549
|
||||
@@ -7408,7 +7408,7 @@ msgstr "イベント終了"
|
||||
|
||||
#: pretix/base/reldate.py:37
|
||||
msgid "Event admission"
|
||||
msgstr "イベントの入場料"
|
||||
msgstr "イベントの入場"
|
||||
|
||||
#: pretix/base/reldate.py:38
|
||||
msgid "Presale start"
|
||||
@@ -7635,7 +7635,7 @@ msgstr ""
|
||||
#: pretix/base/services/cart.py:175
|
||||
#, python-format
|
||||
msgid "This voucher code can only be redeemed %d more times."
|
||||
msgstr "このバウチャーコードは、もう%d回しか引き換えることができません。"
|
||||
msgstr "このバウチャーコードは、あと%d回しか引き換えることができません。"
|
||||
|
||||
#: pretix/base/services/cart.py:176
|
||||
msgid ""
|
||||
@@ -8621,7 +8621,7 @@ msgstr "プラグイン: %s"
|
||||
#: pretix/base/services/vouchers.py:56 pretix/control/logdisplay.py:484
|
||||
#, python-brace-format
|
||||
msgid "The voucher has been sent to {recipient}."
|
||||
msgstr "そのバウチャーは{recipient}に送信されました。"
|
||||
msgstr "バウチャーは、{recipient}あてに送信されました。"
|
||||
|
||||
#: pretix/base/settings.py:125
|
||||
msgid "Allow usage of restricted plugins"
|
||||
@@ -9238,7 +9238,7 @@ msgstr "開始日を表示します"
|
||||
|
||||
#: pretix/base/settings.py:1025
|
||||
msgid "Show the presale start date before presale has started."
|
||||
msgstr "プレセールの開始日を表示する前に、プレセールが開始される前です。"
|
||||
msgstr "プレセールが始まる前に、プレセールの開始日を表示します。"
|
||||
|
||||
#: pretix/base/settings.py:1040 pretix/base/settings.py:1051
|
||||
msgid "Do not generate invoices"
|
||||
@@ -9467,7 +9467,7 @@ msgstr "全ての売り切れ商品を非表示にしてください"
|
||||
|
||||
#: pretix/base/settings.py:1351 pretix/control/forms/event.py:1678
|
||||
msgid "Publicly show how many tickets of a certain type are still available."
|
||||
msgstr "特定の種類のチケットの残り枚数を公開してください。"
|
||||
msgstr "特定の種類のチケットの残り枚数を公開する。"
|
||||
|
||||
#: pretix/base/settings.py:1360
|
||||
msgid "Ask search engines not to index the ticket shop"
|
||||
@@ -9696,8 +9696,8 @@ msgid ""
|
||||
"from the page as soon as they clicked a link in the email. Does not affect "
|
||||
"orders performed through other sales channels."
|
||||
msgstr ""
|
||||
"電源が入っている場合、チケットは購入直後に直接ダウンロードできません。ファイ"
|
||||
"ルサイズが大きくない場合、支払い確認のメールに添付され、顧客はメール内のリン"
|
||||
"オンになっている場合、チケットは購入直後に直接ダウンロードできません。ファイ"
|
||||
"ルサイズが大きくなければ、支払い確認のメールに添付され、顧客はメール内のリン"
|
||||
"クをクリックするとすぐにページからダウンロードできます。他の販売チャネルを通"
|
||||
"じて行われた注文には影響しません。"
|
||||
|
||||
@@ -10162,7 +10162,7 @@ msgstr ""
|
||||
#: pretix/control/templates/pretixcontrol/event/mail.html:39
|
||||
#: pretix/control/templates/pretixcontrol/organizers/mail.html:40
|
||||
msgid "Sender address"
|
||||
msgstr "送り主の住所"
|
||||
msgstr "送信元のアドレス"
|
||||
|
||||
#: pretix/base/settings.py:2137 pretix/control/forms/mailsetup.py:36
|
||||
#: pretix/control/forms/mailsetup.py:109
|
||||
@@ -10312,8 +10312,8 @@ msgstr ""
|
||||
"こんにちは、\n"
|
||||
"\n"
|
||||
"{event}の注文を承りました。\n"
|
||||
"イベント主催者の承認が必要な商品をご注文いただいたため、次のメールをお待ちい"
|
||||
"ただくようお願い申し上げます。\n"
|
||||
"イベント主催者の承認が必要な商品をご注文いただいたため、\n"
|
||||
"次のメールをお待ちいただくようお願い申し上げます。\n"
|
||||
"\n"
|
||||
"注文の詳細の変更と確認は、以下のURLから可能です。\n"
|
||||
"{url}\n"
|
||||
@@ -11460,7 +11460,7 @@ msgstr "氏(Surname/Family Name)"
|
||||
#: pretix/base/settings.py:3685
|
||||
msgctxt "person_name_sample"
|
||||
msgid "John"
|
||||
msgstr "ジョン"
|
||||
msgstr "太郎"
|
||||
|
||||
#: pretix/base/settings.py:3467 pretix/base/settings.py:3483
|
||||
#: pretix/base/settings.py:3499 pretix/base/settings.py:3515
|
||||
@@ -11469,7 +11469,7 @@ msgstr "ジョン"
|
||||
#: pretix/base/settings.py:3655 pretix/base/settings.py:3686
|
||||
msgctxt "person_name_sample"
|
||||
msgid "Doe"
|
||||
msgstr "Doe"
|
||||
msgstr "山田"
|
||||
|
||||
#: pretix/base/settings.py:3473 pretix/base/settings.py:3489
|
||||
#: pretix/base/settings.py:3521 pretix/base/settings.py:3640
|
||||
@@ -11497,7 +11497,7 @@ msgstr "ミドルネーム"
|
||||
#: pretix/control/forms/organizer.py:651
|
||||
msgctxt "person_name_sample"
|
||||
msgid "John Doe"
|
||||
msgstr "John Doe"
|
||||
msgstr "山田 太郎"
|
||||
|
||||
#: pretix/base/settings.py:3593
|
||||
msgid "Calling name"
|
||||
@@ -11831,7 +11831,7 @@ msgstr "ここをクリックして、通知設定を表示および変更"
|
||||
|
||||
#: pretix/base/templates/pretixbase/email/notification.html:60
|
||||
msgid "Click here disable all notifications immediately."
|
||||
msgstr "ここをクリックしてすぐにすべての通知を無効にしてください。"
|
||||
msgstr "ここをクリックして、すべての通知を直ちに無効にする。"
|
||||
|
||||
#: pretix/base/templates/pretixbase/email/notification.txt:15
|
||||
msgid "Click here to view and change your notification settings:"
|
||||
@@ -12183,7 +12183,7 @@ msgstr "あなたのイベントは終了します"
|
||||
#: pretix/base/timeline.py:76
|
||||
msgctxt "timeline"
|
||||
msgid "Admissions for your event start"
|
||||
msgstr "イベントの入場は始まります"
|
||||
msgstr "イベントの入場が始まります"
|
||||
|
||||
#: pretix/base/timeline.py:84
|
||||
msgctxt "timeline"
|
||||
@@ -13214,7 +13214,7 @@ msgstr "支払い期限"
|
||||
|
||||
#: pretix/control/forms/filter.py:1196 pretix/control/forms/filter.py:1671
|
||||
msgid "Shop live and presale running"
|
||||
msgstr "営業中かつプレセールが開催中です"
|
||||
msgstr "公開中かつ予約販売が開催中です"
|
||||
|
||||
#: pretix/control/forms/filter.py:1197 pretix/control/forms/filter.py:2013
|
||||
msgid "Inactive"
|
||||
@@ -13314,7 +13314,7 @@ msgstr "有効なメンバーシップがあります"
|
||||
|
||||
#: pretix/control/forms/filter.py:1670
|
||||
msgid "Shop live"
|
||||
msgstr "お店が営業中"
|
||||
msgstr "ショップが公開中"
|
||||
|
||||
#: pretix/control/forms/filter.py:1672
|
||||
msgid "Shop not live"
|
||||
@@ -13657,8 +13657,8 @@ msgid ""
|
||||
"as-a-Service company)."
|
||||
msgstr ""
|
||||
"私は他のイベント主催者のチケットを販売するためにPretixを使用しています(例:"
|
||||
"チケット販売会社)、または他の人にPretixの機能を提供しています(例:Software-"
|
||||
"as-a-Service会社)。"
|
||||
"チケット販売会社)、または他の人にoretixの機能を提供しています(例:SaaS会社"
|
||||
")。"
|
||||
|
||||
#: pretix/control/forms/global_settings.py:162
|
||||
msgid "I'm not sure which option applies."
|
||||
@@ -14325,7 +14325,7 @@ msgstr ""
|
||||
|
||||
#: pretix/control/forms/orders.py:714 pretix/plugins/sendmail/forms.py:196
|
||||
msgid "Attach tickets"
|
||||
msgstr "チケットを添付します"
|
||||
msgstr "チケットを添付する"
|
||||
|
||||
#: pretix/control/forms/orders.py:715 pretix/plugins/sendmail/forms.py:197
|
||||
msgid ""
|
||||
@@ -14347,8 +14347,8 @@ msgstr "受取人"
|
||||
#: pretix/control/forms/orders.py:777
|
||||
msgid ""
|
||||
"Cancel the order. All tickets will no longer work. This can not be reverted."
|
||||
msgstr "注文をキャンセルします。すべてのチケットはもはや有効ではありません。これは元"
|
||||
"に戻すことができません。"
|
||||
msgstr "注文をキャンセルする。すべてのチケットはもはや有効ではありません。これは元に"
|
||||
"戻すことができません。"
|
||||
|
||||
#: pretix/control/forms/orders.py:778
|
||||
msgid ""
|
||||
@@ -15525,8 +15525,8 @@ msgstr "未確認のタイプの電子メールが送信されました。"
|
||||
msgid ""
|
||||
"The email has been sent without attached tickets since they would have been "
|
||||
"too large to be likely to arrive."
|
||||
msgstr "チケットを添付すると、サイズが大きすぎて届く可能性が低いため、メールはチケッ"
|
||||
"トを添付せずに送信されました。"
|
||||
msgstr "チケットのサイズが大きすぎて届かない可能性があるため、チケットを添付せずにメ"
|
||||
"ールが送信されました。"
|
||||
|
||||
#: pretix/control/logdisplay.py:422
|
||||
msgid "A custom email has been sent."
|
||||
@@ -15753,7 +15753,7 @@ msgstr "そのバウチャーは作成されました。"
|
||||
|
||||
#: pretix/control/logdisplay.py:485
|
||||
msgid "The voucher has been created and sent to a person on the waiting list."
|
||||
msgstr "そのバウチャーは作成され、空席待ちリストの人に送信されました。"
|
||||
msgstr "バウチャーが作成され、空席待ちリストの人に送信されました。"
|
||||
|
||||
#: pretix/control/logdisplay.py:486
|
||||
msgid ""
|
||||
@@ -16528,8 +16528,8 @@ msgstr "お帰りなさい!"
|
||||
msgid ""
|
||||
"You configured your account to require authentication with a second medium, "
|
||||
"e.g. your phone. Please enter your verification code here:"
|
||||
msgstr "アカウントの設定で、第二の認証手段(例:携帯電話)が必要になるように構成しま"
|
||||
"した。こちらに確認コードを入力してください:"
|
||||
msgstr "アカウントの設定で、第二の認証手段(例:携帯電話)が必要になるように構成され"
|
||||
"ています。こちらに確認コードを入力してください:"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/auth/login_2fa.html:14
|
||||
msgid "Token"
|
||||
@@ -16835,7 +16835,7 @@ msgstr "セキュリティ上の理由から、続行する前にパスワード
|
||||
#: pretix/control/templates/pretixcontrol/base.html:454
|
||||
#, python-format
|
||||
msgid "Times displayed in %(tz)s"
|
||||
msgstr "%(tz)sで表示される時間"
|
||||
msgstr "表示される時間帯 %(tz)s"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/base.html:460
|
||||
msgid "running in development mode"
|
||||
@@ -18253,7 +18253,7 @@ msgstr "チケットショップを公開するためには、まず以下の問
|
||||
#: pretix/control/templates/pretixcontrol/event/live.html:51
|
||||
#: pretix/control/templates/pretixcontrol/event/live.html:65
|
||||
msgid "Go live"
|
||||
msgstr "営業を開始します"
|
||||
msgstr "オンラインにする"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/live.html:59
|
||||
msgid "If you want to, you can publish your ticket shop now."
|
||||
@@ -18420,7 +18420,7 @@ msgstr "支払い済みの注文"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/mail.html:96
|
||||
msgid "Free order"
|
||||
msgstr "自由な順序"
|
||||
msgstr "無料の注文"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/mail.html:99
|
||||
#: pretix/control/templates/pretixcontrol/order/index.html:248
|
||||
@@ -18446,7 +18446,7 @@ msgstr "注文のカスタム電子メール"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/mail.html:120
|
||||
msgid "Reminder to download tickets"
|
||||
msgstr "チケットをダウンロードすることをお知らせします"
|
||||
msgstr "チケットのダウンロードをリマインドする"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/mail.html:123
|
||||
msgid "Order approval process"
|
||||
@@ -20044,8 +20044,9 @@ msgid ""
|
||||
"tickets\" or \"buy 2 tickets, get 1 free\"."
|
||||
msgstr ""
|
||||
"自動割引を使用すると、特定の条件に基づいて顧客の購入に自動的に割引を適用する"
|
||||
"ことができます。たとえば、「3枚以上のチケットを購入すると20%割引」や「2枚の"
|
||||
"チケットを購入すると1枚無料」などのグループ割引を作成することができます。"
|
||||
"ことができます。たとえば、「3枚以上のチケットを購入すると20パーセント割引」や"
|
||||
"「2枚のチケットを購入すると1枚無料」などのグループ割引を作成することができま"
|
||||
"す。"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/items/discounts.html:15
|
||||
msgid ""
|
||||
@@ -20158,7 +20159,7 @@ msgstr "新しい商品を作成"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/items/index.html:101
|
||||
msgid "Personalized admission ticket"
|
||||
msgstr "サンプル用チケット"
|
||||
msgstr "記名式入場券"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/items/index.html:103
|
||||
msgid "Admission ticket without personalization"
|
||||
@@ -20196,7 +20197,7 @@ msgstr "<strong>plus</strong> %(rate)s%% %(taxname)s"
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_cart.html:409
|
||||
#, python-format
|
||||
msgid "incl. %(rate)s%% %(taxname)s"
|
||||
msgstr "%(rate)s%% %(taxname)sを含む"
|
||||
msgstr "%(taxname)s%(rate)s パーセントを含む"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/items/question.html:6
|
||||
#: pretix/control/templates/pretixcontrol/items/question.html:9
|
||||
@@ -20404,7 +20405,7 @@ msgstr "このクォータの実際の結果を変更する可能性があるプ
|
||||
#: pretix/control/templates/pretixcontrol/items/quota.html:86
|
||||
#, python-format
|
||||
msgid "This quota is currently overbooked by %(num)s tickets."
|
||||
msgstr "このクォータは現在%(num)s枚のチケットで過剰予約されています。"
|
||||
msgstr "このクォータは、現在%(num)s枚のチケットが過剰に予約されています。"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/items/quota.html:93
|
||||
msgid ""
|
||||
@@ -21125,7 +21126,7 @@ msgstr "エントリーのスキャン: %(date)s"
|
||||
#: pretix/control/templates/pretixcontrol/order/index.html:422
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_cart.html:54
|
||||
msgid "Voucher code used:"
|
||||
msgstr "割引コード使用済:"
|
||||
msgstr "使用するバウチャーコード:"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/order/index.html:424
|
||||
#, python-format
|
||||
@@ -21886,7 +21887,7 @@ msgstr "保留中(確認済み)"
|
||||
#: pretix/control/templates/pretixcontrol/orders/fragment_order_status.html:26
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_order_status.html:19
|
||||
msgid "Canceled (paid fee)"
|
||||
msgstr "キャンセル(料金支払い済み)"
|
||||
msgstr "キャンセル済み(支払い済み手数料)"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/orders/import_process.html:6
|
||||
#: pretix/control/templates/pretixcontrol/orders/import_process.html:8
|
||||
@@ -22486,7 +22487,7 @@ msgstr "デバイスを接続"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/organizers/devices.html:81
|
||||
msgid "Hardware model"
|
||||
msgstr "ハードウェアモデル"
|
||||
msgstr "ハードウェアの機種"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/organizers/devices.html:139
|
||||
msgid "Not yet initialized"
|
||||
@@ -25009,7 +25010,7 @@ msgstr "選択したリストは削除されました。"
|
||||
|
||||
#: pretix/control/views/dashboards.py:115
|
||||
msgid "Attendees (ordered)"
|
||||
msgstr "出席者(順番に)"
|
||||
msgstr "参加者(注文済み)"
|
||||
|
||||
#: pretix/control/views/dashboards.py:125
|
||||
msgid "Attendees (paid)"
|
||||
@@ -25047,11 +25048,11 @@ msgstr "ここをクリックして変更してください"
|
||||
|
||||
#: pretix/control/views/dashboards.py:273
|
||||
msgid "live"
|
||||
msgstr "営業中"
|
||||
msgstr "公開中"
|
||||
|
||||
#: pretix/control/views/dashboards.py:274
|
||||
msgid "live and in test mode"
|
||||
msgstr "営業中かつテストモード"
|
||||
msgstr "公開中かつテストモード"
|
||||
|
||||
#: pretix/control/views/dashboards.py:275
|
||||
msgid "not yet public"
|
||||
@@ -25188,7 +25189,7 @@ msgstr "無効なチケット出力タイプをリクエストしました。"
|
||||
|
||||
#: pretix/control/views/event.py:972
|
||||
msgid "Your shop is live now!"
|
||||
msgstr "あなたのショップは営業中です!"
|
||||
msgstr "あなたのショップは公開中です!"
|
||||
|
||||
#: pretix/control/views/event.py:980
|
||||
msgid "We've taken your shop down. You can re-enable it whenever you want!"
|
||||
@@ -25549,7 +25550,7 @@ msgstr "検証コードが間違っています。もう一度お試しくださ
|
||||
|
||||
#: pretix/control/views/mailsetup.py:221
|
||||
msgid "Sender address verification"
|
||||
msgstr "送り主の住所確認"
|
||||
msgstr "送信元のアドレス確認"
|
||||
|
||||
#: pretix/control/views/mailsetup.py:277
|
||||
#, python-format
|
||||
@@ -27348,7 +27349,7 @@ msgstr "払い戻しをエクスポート"
|
||||
|
||||
#: pretix/plugins/banktransfer/signals.py:123
|
||||
msgid "The invoice was sent to the designated email address."
|
||||
msgstr "請求書は指定されたメールアドレスに送信されました。"
|
||||
msgstr "請求書は、指定されたメールアドレスあてに送信されました。"
|
||||
|
||||
#: pretix/plugins/banktransfer/signals.py:132
|
||||
#, python-brace-format
|
||||
@@ -29514,7 +29515,7 @@ msgstr "ストライプアカウント"
|
||||
#: pretix/plugins/stripe/payment.py:261
|
||||
msgctxt "stripe"
|
||||
msgid "Live"
|
||||
msgstr "営業中"
|
||||
msgstr "公開中"
|
||||
|
||||
#: pretix/plugins/stripe/payment.py:262
|
||||
msgctxt "stripe"
|
||||
@@ -30753,7 +30754,7 @@ msgstr "このショップは現在あなたとあなたのチームだけが見
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:34
|
||||
msgid "Take it live now"
|
||||
msgstr "今すぐ営業を始める"
|
||||
msgstr "今すぐ公開する"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:44
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:105
|
||||
@@ -30818,9 +30819,10 @@ msgid ""
|
||||
"href=\"%(time_machine_link)s\"><span class=\"fa fa-clock-o\" aria-"
|
||||
"hidden=\"true\"></span>time machine</a>."
|
||||
msgstr ""
|
||||
"異なる時点であなたのショップを表示するには、<a href=\"%(time_machine_link)s\""
|
||||
"><span class=\"fa fa-clock-o\" aria-hidden=\"true\""
|
||||
"></span>タイムマシン</a>を有効にすることができます。"
|
||||
"<a href=\"%(time_machine_link)s\"><span class=\"fa fa-clock-o\" aria-hidden="
|
||||
"\"true\""
|
||||
"></span>タイムマシン</a>を有効にすることで、異なる時刻におけるあなたのショッ"
|
||||
"プを表示することができます。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:163
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:210
|
||||
@@ -31009,7 +31011,7 @@ msgstr "注文を確定"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_confirm.html:209
|
||||
msgid "Submit registration"
|
||||
msgstr "登録を送信してください"
|
||||
msgstr "予約を送信する"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/checkout_customer.html:18
|
||||
msgid "Log in with a customer account"
|
||||
@@ -31343,7 +31345,7 @@ msgstr "<strong>plus</strong> %(rate)s%% %(name)s"
|
||||
#: pretix/presale/templates/pretixpresale/event/voucher.html:366
|
||||
#, python-format
|
||||
msgid "incl. %(rate)s%% %(name)s"
|
||||
msgstr "%(rate)s%% %(name)s を含む"
|
||||
msgstr "%(name)s %(rate)sパーセントを含む"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_addon_choice.html:200
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_addon_choice.html:207
|
||||
@@ -31564,7 +31566,7 @@ msgstr[0] "%(num)s 個の製品"
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_cart.html:465
|
||||
#, python-format
|
||||
msgid "incl. %(tax_sum)s taxes"
|
||||
msgstr "incl. %(tax_sum)s 税金"
|
||||
msgstr "税%(tax_sum)sを含む"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_cart.html:482
|
||||
#, python-format
|
||||
@@ -31594,7 +31596,7 @@ msgstr "チェックアウトを続行します"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_cart_box.html:63
|
||||
msgid "Empty cart"
|
||||
msgstr "空のカート"
|
||||
msgstr "カートを空にする"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_cart_box.html:68
|
||||
#: pretix/presale/templates/pretixpresale/event/index.html:236
|
||||
@@ -31761,7 +31763,7 @@ msgstr "注文が確定しました"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_downloads.html:14
|
||||
msgid "Please check your email account, we've sent you your tickets."
|
||||
msgstr "メールアカウントを確認してください。チケットを送信しました。"
|
||||
msgstr "メールが届いているかご確認ください。チケットを送信しました。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_downloads.html:16
|
||||
msgid "Please check your email account, we've sent you an email."
|
||||
@@ -31876,7 +31878,7 @@ msgstr "%(item)sのフルサイズの画像を表示"
|
||||
#: pretix/presale/templates/pretixpresale/event/voucher.html:359
|
||||
#, python-format
|
||||
msgid "%(value)s incl. taxes"
|
||||
msgstr "%(value)s 税込"
|
||||
msgstr "税込%(value)s"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_product_list.html:197
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_product_list.html:350
|
||||
@@ -32091,12 +32093,12 @@ msgid ""
|
||||
"your order to be sent to you again."
|
||||
msgstr ""
|
||||
"注文の状況や詳細を確認または変更したい場合は、注文手続き中に当社から送られた"
|
||||
"メールのリンクをクリックしてください。リンクが見つからない場合は、以下のボタ"
|
||||
"メールのリンクをクリックしてください。リンクが見つからない場合は、つぎのボタ"
|
||||
"ンをクリックして、注文のリンクを再度送付してもらうこともできます。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/index.html:256
|
||||
msgid "Resend order link"
|
||||
msgstr "注文リンクを再送してください"
|
||||
msgstr "注文リンクを再送する"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/offline.html:4
|
||||
#: pretix/presale/templates/pretixpresale/event/offline.html:8
|
||||
@@ -32242,7 +32244,7 @@ msgstr "注文された商品を変更します"
|
||||
#: pretix/presale/templates/pretixpresale/event/order.html:290
|
||||
#: pretix/presale/templates/pretixpresale/event/position.html:34
|
||||
msgid "Change details"
|
||||
msgstr "変更の詳細"
|
||||
msgstr "詳細を変更"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/order.html:262
|
||||
msgid ""
|
||||
@@ -32382,7 +32384,7 @@ msgstr ""
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/order.html:467
|
||||
msgid "You can cancel this order using the following button."
|
||||
msgstr "次のボタンを使用して、この注文をキャンセルすることができます。"
|
||||
msgstr "つぎのボタンを使用して、この注文をキャンセルすることができます。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/order_cancel.html:11
|
||||
#, python-format
|
||||
@@ -32547,7 +32549,7 @@ msgstr "チケットを変更"
|
||||
msgid ""
|
||||
"If you want to make changes to the components of your ticket, you can click "
|
||||
"on the following button."
|
||||
msgstr "チケットのコンポーネントを変更したい場合は、以下のボタンをクリックしてくださ"
|
||||
msgstr "チケットのコンポーネントを変更したい場合は、つぎのボタンをクリックしてくださ"
|
||||
"い。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/position.html:73
|
||||
@@ -32587,7 +32589,7 @@ msgstr "支払い済みの注文"
|
||||
#: pretix/presale/templates/pretixpresale/event/resend_link.html:4
|
||||
#: pretix/presale/templates/pretixpresale/event/resend_link.html:11
|
||||
msgid "Resend order links"
|
||||
msgstr "注文リンクを再送してください"
|
||||
msgstr "注文リンクを再送する"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/resend_link.html:15
|
||||
msgid ""
|
||||
@@ -33081,7 +33083,7 @@ msgstr "これからのイベントを見る"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/organizers/index.html:169
|
||||
msgid "No public upcoming events found."
|
||||
msgstr "公開される今後のイベントが見つかりません。"
|
||||
msgstr "今後一般に公表されるイベントが見つかりません。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/organizers/index.html:169
|
||||
msgid "Show past events"
|
||||
@@ -33297,7 +33299,7 @@ msgstr "この注文については、チケットのダウンロードはまだ
|
||||
|
||||
#: pretix/presale/views/order.py:1118
|
||||
msgid "Please click the link we sent you via email to download your tickets."
|
||||
msgstr "メールで送られたリンクをクリックしてチケットをダウンロードしてください。"
|
||||
msgstr "メールで送られたリンクをクリックして、チケットをダウンロードしてください。"
|
||||
|
||||
#: pretix/presale/views/order.py:1601
|
||||
#, python-brace-format
|
||||
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2024-12-31 18:00+0000\n"
|
||||
"PO-Revision-Date: 2025-01-11 21:00+0000\n"
|
||||
"Last-Translator: Hijiri Umemoto <hijiri@umemoto.org>\n"
|
||||
"Language-Team: Korean <https://translate.pretix.eu/projects/pretix/pretix/ko/"
|
||||
">\n"
|
||||
@@ -170,10 +170,8 @@ msgid "Allowed URIs list, space separated"
|
||||
msgstr "허용된 URI 리스트, 스페이스로 구분"
|
||||
|
||||
#: pretix/api/models.py:47
|
||||
#, fuzzy
|
||||
#| msgid "Allowed URIs list, space separated"
|
||||
msgid "Allowed Post Logout URIs list, space separated"
|
||||
msgstr "허용된 URI 리스트, 스페이스로 구분"
|
||||
msgstr "공백으로 구분된 허용된 로그아웃 후 URI 목록"
|
||||
|
||||
#: pretix/api/models.py:51 pretix/base/models/customers.py:406
|
||||
#: pretix/plugins/paypal/payment.py:113 pretix/plugins/paypal2/payment.py:110
|
||||
@@ -17954,10 +17952,8 @@ msgid "December"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/global_sysreport.html:32
|
||||
#, fuzzy
|
||||
#| msgid "Generate tickets"
|
||||
msgid "Generate report"
|
||||
msgstr "티켓 생성"
|
||||
msgstr "보고서를 생성"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/global_update.html:7
|
||||
msgid "Update check results"
|
||||
@@ -19895,11 +19891,8 @@ msgstr ""
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/orders/bulk_action.html:5
|
||||
#: pretix/control/templates/pretixcontrol/orders/bulk_action.html:7
|
||||
#, fuzzy
|
||||
#| msgid "1 order"
|
||||
#| msgid_plural "%(s)s orders"
|
||||
msgid "Modify orders"
|
||||
msgstr "%(s)s개 주문"
|
||||
msgstr "주문을 수정"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/orders/bulk_action.html:12
|
||||
#, python-format
|
||||
@@ -22091,11 +22084,8 @@ msgid "Begin"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/subevents/index.html:176
|
||||
#, fuzzy
|
||||
#| msgid "1 order"
|
||||
#| msgid_plural "%(s)s orders"
|
||||
msgid "Show orders"
|
||||
msgstr "%(s)s개 주문"
|
||||
msgstr "주문을 표시"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/subevents/index.html:187
|
||||
msgctxt "subevent"
|
||||
@@ -26628,10 +26618,8 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: pretix/plugins/returnurl/views.py:37
|
||||
#, fuzzy
|
||||
#| msgid "Redirection URIs"
|
||||
msgid "Base redirection URLs"
|
||||
msgstr "리다이렉션URI"
|
||||
msgstr "기본 리다이렉션 URL"
|
||||
|
||||
#: pretix/plugins/returnurl/views.py:38
|
||||
msgid ""
|
||||
@@ -27315,10 +27303,8 @@ msgid "Publishable key"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/plugins/stripe/payment.py:280
|
||||
#, fuzzy
|
||||
#| msgid "Generate tickets"
|
||||
msgid "Generate API keys"
|
||||
msgstr "티켓 생성"
|
||||
msgstr "API 키 생성"
|
||||
|
||||
#: pretix/plugins/stripe/payment.py:282
|
||||
msgid ""
|
||||
@@ -28495,11 +28481,8 @@ msgstr ""
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:127
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:201
|
||||
#, fuzzy
|
||||
#| msgid "This ticket has been used once."
|
||||
#| msgid_plural "This ticket has been used %(count)s times."
|
||||
msgid "This ticket shop is currently in test mode."
|
||||
msgstr "티켓이 %(count)s회 사용되었습니다."
|
||||
msgstr "이 티켓 상점은 현재 테스트 모드입니다."
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:130
|
||||
#: pretix/presale/templates/pretixpresale/event/base.html:204
|
||||
@@ -29761,11 +29744,8 @@ msgid "Shop offline"
|
||||
msgstr ""
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/offline.html:9
|
||||
#, fuzzy
|
||||
#| msgid "This ticket has been used once."
|
||||
#| msgid_plural "This ticket has been used %(count)s times."
|
||||
msgid "This ticket shop is currently turned off."
|
||||
msgstr "티켓이 %(count)s회 사용되었습니다."
|
||||
msgstr "이 티켓 상점은 현재 비활성화되어 있습니다."
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/offline.html:10
|
||||
msgid "It is only accessible to authenticated team members."
|
||||
@@ -30208,11 +30188,8 @@ msgstr ""
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/position_modify.html:5
|
||||
#: pretix/presale/templates/pretixpresale/event/position_modify.html:8
|
||||
#, fuzzy
|
||||
#| msgid "1 order"
|
||||
#| msgid_plural "%(s)s orders"
|
||||
msgid "Modify ticket"
|
||||
msgstr "%(s)s개 주문"
|
||||
msgstr "티켓 수정"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/resend_link.html:4
|
||||
#: pretix/presale/templates/pretixpresale/event/resend_link.html:11
|
||||
|
||||
@@ -8,8 +8,8 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2024-12-13 08:00+0000\n"
|
||||
"Last-Translator: Vasco Baleia <vb2003.12@gmail.com>\n"
|
||||
"PO-Revision-Date: 2025-01-10 20:00+0000\n"
|
||||
"Last-Translator: David Vaz <davidmgvaz@gmail.com>\n"
|
||||
"Language-Team: Portuguese (Portugal) <https://translate.pretix.eu/projects/"
|
||||
"pretix/pretix/pt_PT/>\n"
|
||||
"Language: pt_PT\n"
|
||||
@@ -17,7 +17,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
||||
"X-Generator: Weblate 5.8.4\n"
|
||||
"X-Generator: Weblate 5.9.2\n"
|
||||
|
||||
#: pretix/_base_settings.py:79
|
||||
msgid "English"
|
||||
@@ -34876,7 +34876,7 @@ msgstr "Nenhuma associação é armazenada em sua conta."
|
||||
#| msgid "+ %(count)s invited"
|
||||
msgid "%(counter)s item"
|
||||
msgid_plural "%(counter)s items"
|
||||
msgstr[0] "+%(count)s convidados"
|
||||
msgstr[0] "+%(count)s convidado"
|
||||
msgstr[1] "+%(count)s convidados"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/organizers/customer_orders.html:78
|
||||
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2024-12-30 22:00+0000\n"
|
||||
"PO-Revision-Date: 2025-01-04 01:00+0000\n"
|
||||
"Last-Translator: Hijiri Umemoto <hijiri@umemoto.org>\n"
|
||||
"Language-Team: Turkish <https://translate.pretix.eu/projects/pretix/pretix/"
|
||||
"tr/>\n"
|
||||
@@ -1041,10 +1041,8 @@ msgid "Name"
|
||||
msgstr "Ad"
|
||||
|
||||
#: pretix/base/exporters/customers.py:77 pretix/base/models/customers.py:99
|
||||
#, fuzzy
|
||||
#| msgid "This account is inactive."
|
||||
msgid "Account active"
|
||||
msgstr "Bu hesap aktif değildir."
|
||||
msgstr "Hesap aktif"
|
||||
|
||||
#: pretix/base/exporters/customers.py:78 pretix/base/models/customers.py:100
|
||||
#, fuzzy
|
||||
|
||||
@@ -8,16 +8,16 @@ msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-16 14:20+0000\n"
|
||||
"PO-Revision-Date: 2024-01-22 17:08+0000\n"
|
||||
"Last-Translator: Raphael Michel <michel@rami.io>\n"
|
||||
"Language-Team: Chinese (Traditional) <https://translate.pretix.eu/projects/"
|
||||
"pretix/pretix/zh_Hant/>\n"
|
||||
"PO-Revision-Date: 2025-01-04 19:00+0000\n"
|
||||
"Last-Translator: Hijiri Umemoto <hijiri@umemoto.org>\n"
|
||||
"Language-Team: Chinese (Traditional Han script) <https://translate.pretix.eu/"
|
||||
"projects/pretix/pretix/zh_Hant/>\n"
|
||||
"Language: zh_Hant\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.3.1\n"
|
||||
"X-Generator: Weblate 5.9.2\n"
|
||||
|
||||
#: pretix/_base_settings.py:79
|
||||
msgid "English"
|
||||
@@ -37,11 +37,11 @@ msgstr "阿拉伯語"
|
||||
|
||||
#: pretix/_base_settings.py:83
|
||||
msgid "Basque"
|
||||
msgstr ""
|
||||
msgstr "巴斯克語"
|
||||
|
||||
#: pretix/_base_settings.py:84
|
||||
msgid "Catalan"
|
||||
msgstr ""
|
||||
msgstr "嘉泰羅尼亞語"
|
||||
|
||||
#: pretix/_base_settings.py:85
|
||||
msgid "Chinese (simplified)"
|
||||
@@ -85,7 +85,7 @@ msgstr "希臘語"
|
||||
|
||||
#: pretix/_base_settings.py:95
|
||||
msgid "Indonesian"
|
||||
msgstr ""
|
||||
msgstr "印尼語"
|
||||
|
||||
#: pretix/_base_settings.py:96
|
||||
msgid "Italian"
|
||||
@@ -97,7 +97,7 @@ msgstr "拉脫維亞語"
|
||||
|
||||
#: pretix/_base_settings.py:98
|
||||
msgid "Norwegian Bokmål"
|
||||
msgstr ""
|
||||
msgstr "挪威博克馬爾語"
|
||||
|
||||
#: pretix/_base_settings.py:99
|
||||
msgid "Polish"
|
||||
@@ -121,11 +121,11 @@ msgstr "俄語"
|
||||
|
||||
#: pretix/_base_settings.py:104
|
||||
msgid "Slovak"
|
||||
msgstr ""
|
||||
msgstr "斯洛伐克語"
|
||||
|
||||
#: pretix/_base_settings.py:105
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
msgstr "瑞典語"
|
||||
|
||||
#: pretix/_base_settings.py:106
|
||||
msgid "Spanish"
|
||||
@@ -582,10 +582,8 @@ msgid "Customer account changed"
|
||||
msgstr "客戶帳戶電子郵件更改"
|
||||
|
||||
#: pretix/api/webhooks.py:394
|
||||
#, fuzzy
|
||||
#| msgid "The customer account has been anonymized."
|
||||
msgid "Customer account anonymized"
|
||||
msgstr "客戶帳戶已匿名化。"
|
||||
msgstr "客戶帳戶已匿名化"
|
||||
|
||||
#: pretix/base/addressvalidation.py:100 pretix/base/addressvalidation.py:103
|
||||
#: pretix/base/addressvalidation.py:108 pretix/base/forms/questions.py:960
|
||||
@@ -647,7 +645,7 @@ msgstr "密碼"
|
||||
|
||||
#: pretix/base/auth.py:176 pretix/base/auth.py:183
|
||||
msgid "Your password must contain both numeric and alphabetic characters."
|
||||
msgstr ""
|
||||
msgstr "您的密碼必須包含數字和字母字元。"
|
||||
|
||||
#: pretix/base/auth.py:202 pretix/base/auth.py:212
|
||||
#, python-format
|
||||
@@ -655,7 +653,7 @@ msgid "Your password may not be the same as your previous password."
|
||||
msgid_plural ""
|
||||
"Your password may not be the same as one of your %(history_length)s previous "
|
||||
"passwords."
|
||||
msgstr[0] ""
|
||||
msgstr[0] "您的密碼可能與您之前的 %(history_length)s密碼之一不同。"
|
||||
|
||||
#: pretix/base/channels.py:168
|
||||
msgid "Online shop"
|
||||
@@ -663,13 +661,13 @@ msgstr "網上商店"
|
||||
|
||||
#: pretix/base/channels.py:174
|
||||
msgid "API"
|
||||
msgstr ""
|
||||
msgstr "API"
|
||||
|
||||
#: pretix/base/channels.py:175
|
||||
msgid ""
|
||||
"API sales channels come with no built-in functionality, but may be used for "
|
||||
"custom integrations."
|
||||
msgstr ""
|
||||
msgstr "API銷售渠道沒有內建功能,但可用於自定義整合。"
|
||||
|
||||
#: pretix/base/context.py:45
|
||||
#, python-brace-format
|
||||
@@ -2889,7 +2887,7 @@ msgstr "優惠券代碼"
|
||||
#: pretix/base/forms/__init__.py:118
|
||||
#, python-brace-format
|
||||
msgid "You can use {markup_name} in this field."
|
||||
msgstr ""
|
||||
msgstr "您可以在此欄位中使用{markup_name}。"
|
||||
|
||||
#: pretix/base/forms/__init__.py:178
|
||||
#, python-format
|
||||
@@ -3089,6 +3087,8 @@ msgid ""
|
||||
"up. Please note: to use literal \"{\" or \"}\", you need to double them as "
|
||||
"\"{{\" and \"}}\"."
|
||||
msgstr ""
|
||||
"您的佔位符語法有誤。 請檢查佔位符上的開頭“{”和結尾“}”花括號是否匹配。 "
|
||||
"請注意:要使用字面“{”或“}”,您需要將它們加倍為“{{”和“}}”。"
|
||||
|
||||
#: pretix/base/forms/validators.py:72 pretix/control/views/event.py:758
|
||||
#, fuzzy, python-format
|
||||
@@ -3097,10 +3097,9 @@ msgid "Invalid placeholder: {%(value)s}"
|
||||
msgstr "無效的佔位元: %(value)s)s"
|
||||
|
||||
#: pretix/base/forms/widgets.py:68
|
||||
#, fuzzy, python-format
|
||||
#| msgid "Sample city"
|
||||
#, python-format
|
||||
msgid "Sample: %s"
|
||||
msgstr "範例城市"
|
||||
msgstr "範例: %s"
|
||||
|
||||
#: pretix/base/forms/widgets.py:71
|
||||
#, python-brace-format
|
||||
@@ -3339,7 +3338,7 @@ msgstr ""
|
||||
|
||||
#: pretix/base/invoice.py:858
|
||||
msgid "Default invoice renderer (European-style letter)"
|
||||
msgstr ""
|
||||
msgstr "預設發票渲染器(歐式信件)"
|
||||
|
||||
#: pretix/base/invoice.py:947
|
||||
msgctxt "invoice"
|
||||
@@ -3348,14 +3347,13 @@ msgstr "(請隨時報價)"
|
||||
|
||||
#: pretix/base/invoice.py:994
|
||||
msgid "Simplified invoice renderer"
|
||||
msgstr ""
|
||||
msgstr "簡化的發票渲染器"
|
||||
|
||||
#: pretix/base/invoice.py:1013
|
||||
#, fuzzy, python-brace-format
|
||||
#| msgid "Event date range"
|
||||
#, python-brace-format
|
||||
msgctxt "invoice"
|
||||
msgid "Event date: {date_range}"
|
||||
msgstr "活動日期區間"
|
||||
msgstr "活動日期: {date_range}"
|
||||
|
||||
#: pretix/base/media.py:71
|
||||
msgid "Barcode / QR-Code"
|
||||
@@ -3576,10 +3574,8 @@ msgid "Maximum usages"
|
||||
msgstr "最大使用量"
|
||||
|
||||
#: pretix/base/modelimport_vouchers.py:79
|
||||
#, fuzzy
|
||||
#| msgid "Maximum number of items per order"
|
||||
msgid "The maximum number of usages must be set."
|
||||
msgstr "每項訂單的最大商品數量"
|
||||
msgstr "必須設定最大使用次數。"
|
||||
|
||||
#: pretix/base/modelimport_vouchers.py:88 pretix/base/models/vouchers.py:205
|
||||
msgid "Minimum usages"
|
||||
@@ -3614,7 +3610,7 @@ msgstr "優惠券價值"
|
||||
|
||||
#: pretix/base/modelimport_vouchers.py:165
|
||||
msgid "It is pointless to set a value without a price mode."
|
||||
msgstr ""
|
||||
msgstr "在沒有價格模式的情況下設定值是沒有意義的。"
|
||||
|
||||
#: pretix/base/modelimport_vouchers.py:237 pretix/base/models/items.py:2081
|
||||
#: pretix/base/models/vouchers.py:272
|
||||
@@ -3743,18 +3739,18 @@ msgstr ""
|
||||
#: pretix/base/models/checkin.py:65
|
||||
msgctxt "checkin"
|
||||
msgid "Ignore check-ins on this list in statistics"
|
||||
msgstr ""
|
||||
msgstr "忽略統計中此列表中的簽到"
|
||||
|
||||
#: pretix/base/models/checkin.py:69
|
||||
msgctxt "checkin"
|
||||
msgid "Tickets with a check-in on this list should be considered \"used\""
|
||||
msgstr ""
|
||||
msgstr "此列表中有簽到的門票應被視為「已使用」"
|
||||
|
||||
#: pretix/base/models/checkin.py:70
|
||||
msgid ""
|
||||
"This is relevant in various situations, e.g. for deciding if a ticket can "
|
||||
"still be canceled by the customer."
|
||||
msgstr ""
|
||||
msgstr "這與各種情況有關,例如用於決定客戶是否仍然可以取消門票。"
|
||||
|
||||
#: pretix/base/models/checkin.py:74
|
||||
msgctxt "checkin"
|
||||
@@ -4065,7 +4061,8 @@ msgid ""
|
||||
"By default, the discount is applied across the same selection of products "
|
||||
"than the condition for the discount given above. If you want, you can "
|
||||
"however also select a different selection of products."
|
||||
msgstr ""
|
||||
msgstr "預設情況下,折扣適用於與上述折扣條件相同的產品選擇。 "
|
||||
"然而,如果您願意,您也可以選擇不同的產品。"
|
||||
|
||||
#: pretix/base/models/discount.py:138
|
||||
#, fuzzy
|
||||
@@ -4356,7 +4353,7 @@ msgstr "對客戶顯示簽到次數"
|
||||
msgid ""
|
||||
"This field will be shown to filter events in the public event list and "
|
||||
"calendar."
|
||||
msgstr ""
|
||||
msgstr "將顯示此欄位,以過濾公共活動列表和日曆中的活動。"
|
||||
|
||||
#: pretix/base/models/event.py:1731 pretix/control/forms/organizer.py:269
|
||||
#: pretix/control/forms/organizer.py:273
|
||||
@@ -5899,10 +5896,8 @@ msgid "Team members"
|
||||
msgstr "團隊成員"
|
||||
|
||||
#: pretix/base/models/organizer.py:289
|
||||
#, fuzzy
|
||||
#| msgid "Do you really want to disable two-factor authentication?"
|
||||
msgid "Require all members of this team to use two-factor authentication"
|
||||
msgstr "你真的要禁用兩步驟驗證嗎?"
|
||||
msgstr "要求該團隊的所有成員使用雙因素身份驗證"
|
||||
|
||||
#: pretix/base/models/organizer.py:290
|
||||
msgid ""
|
||||
@@ -7822,10 +7817,9 @@ msgid "number of entries before {datetime}"
|
||||
msgstr "今日條目數數量"
|
||||
|
||||
#: pretix/base/services/checkin.py:320
|
||||
#, fuzzy, python-brace-format
|
||||
#| msgid "number of entries today"
|
||||
#, python-brace-format
|
||||
msgid "number of days with an entry since {datetime}"
|
||||
msgstr "今日條目數數量"
|
||||
msgstr "自 {datetime}以來條目的天數"
|
||||
|
||||
#: pretix/base/services/checkin.py:321
|
||||
#, fuzzy, python-brace-format
|
||||
@@ -13807,10 +13801,8 @@ msgstr ""
|
||||
"的所有部分,VIP區除外。"
|
||||
|
||||
#: pretix/control/forms/item.py:664
|
||||
#, fuzzy
|
||||
#| msgid "The ordered product \"{item}\" is no longer available."
|
||||
msgid "Show product with info on why it’s unavailable"
|
||||
msgstr "訂購的產品“{item}”不再可用。"
|
||||
msgstr "顯示產品,並瞭解為什麼它不可用"
|
||||
|
||||
#: pretix/control/forms/item.py:677
|
||||
msgid ""
|
||||
@@ -18881,10 +18873,8 @@ msgid "Calculation"
|
||||
msgstr "取消"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/tax_edit.html:64
|
||||
#, fuzzy
|
||||
#| msgid "Reason:"
|
||||
msgid "Reason"
|
||||
msgstr "理由:"
|
||||
msgstr "理由"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/event/tax_edit.html:137
|
||||
#: pretix/control/templates/pretixcontrol/subevents/bulk.html:251
|
||||
@@ -19956,11 +19946,8 @@ msgid ""
|
||||
msgstr "目前不可用,因為已設定此產品的有限時間範圍"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/items/discounts.html:111
|
||||
#, fuzzy
|
||||
#| msgctxt "discount"
|
||||
#| msgid "Condition"
|
||||
msgid "Condition:"
|
||||
msgstr "條件"
|
||||
msgstr "條件:"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/items/discounts.html:126
|
||||
msgid "Applies to:"
|
||||
@@ -22022,10 +22009,8 @@ msgid "Channel type"
|
||||
msgstr "掃描"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/organizers/channel_delete.html:5
|
||||
#, fuzzy
|
||||
#| msgid "Sales channel"
|
||||
msgid "Delete sales channel:"
|
||||
msgstr "銷售管道"
|
||||
msgstr "銷售管道:"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/organizers/channel_delete.html:10
|
||||
#, fuzzy
|
||||
@@ -22044,10 +22029,8 @@ msgid ""
|
||||
msgstr "無法刪除此成員資格,因為它已在訂單中使用。將其結束日期更改為過去。"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/organizers/channel_edit.html:6
|
||||
#, fuzzy
|
||||
#| msgid "Sales channel"
|
||||
msgid "Sales channel:"
|
||||
msgstr "銷售管道"
|
||||
msgstr "銷售管道:"
|
||||
|
||||
#: pretix/control/templates/pretixcontrol/organizers/channels.html:8
|
||||
msgid ""
|
||||
@@ -26454,10 +26437,8 @@ msgid "Login from new source detected"
|
||||
msgstr "未檢測到訂購號"
|
||||
|
||||
#: pretix/helpers/security.py:170
|
||||
#, fuzzy
|
||||
#| msgid "Unknown country code."
|
||||
msgid "Unknown country"
|
||||
msgstr "未知國家代碼."
|
||||
msgstr "未知國家"
|
||||
|
||||
#: pretix/multidomain/models.py:36
|
||||
#, fuzzy
|
||||
@@ -29485,7 +29466,7 @@ msgstr ""
|
||||
|
||||
#: pretix/plugins/stripe/payment.py:350 pretix/plugins/stripe/payment.py:1552
|
||||
msgid "Alipay"
|
||||
msgstr "Alipay"
|
||||
msgstr "支付寶"
|
||||
|
||||
#: pretix/plugins/stripe/payment.py:358 pretix/plugins/stripe/payment.py:1564
|
||||
msgid "Bancontact"
|
||||
@@ -30070,16 +30051,12 @@ msgid "Enter the entity number, reference number, and amount."
|
||||
msgstr ""
|
||||
|
||||
#: pretix/plugins/stripe/templates/pretixplugins/stripe/pending.html:25
|
||||
#, fuzzy
|
||||
#| msgid "Invoice number"
|
||||
msgid "Entity number:"
|
||||
msgstr "發票編號"
|
||||
msgstr "公司編號:"
|
||||
|
||||
#: pretix/plugins/stripe/templates/pretixplugins/stripe/pending.html:26
|
||||
#, fuzzy
|
||||
#| msgid "Reference code"
|
||||
msgid "Reference number:"
|
||||
msgstr "參考代碼"
|
||||
msgstr "參考代碼:"
|
||||
|
||||
#: pretix/plugins/stripe/templates/pretixplugins/stripe/pending.html:35
|
||||
msgid ""
|
||||
@@ -31156,10 +31133,9 @@ msgstr "新價格:"
|
||||
#: pretix/presale/templates/pretixpresale/event/voucher.html:176
|
||||
#: pretix/presale/templates/pretixpresale/event/voucher.html:329
|
||||
#: pretix/presale/templates/pretixpresale/event/voucher.html:331
|
||||
#, fuzzy, python-format
|
||||
#| msgid "Modify price for %(item)s"
|
||||
#, python-format
|
||||
msgid "Modify price for %(item)s, at least %(price)s"
|
||||
msgstr "修改%(item)s 的價格"
|
||||
msgstr "修改%(item)s的價格,至少 %(price)s"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_addon_choice.html:153
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_addon_choice.html:294
|
||||
@@ -31263,16 +31239,12 @@ msgid "Enter a voucher code below to buy this product."
|
||||
msgstr "在下面輸入優惠券代碼以購買此票。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_availability.html:10
|
||||
#, fuzzy
|
||||
#| msgid "Not available"
|
||||
msgid "Not available yet."
|
||||
msgstr "無法使用"
|
||||
msgstr "尚不可用。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_availability.html:14
|
||||
#, fuzzy
|
||||
#| msgid "Not available"
|
||||
msgid "Not available any more."
|
||||
msgstr "無法使用"
|
||||
msgstr "不再可用。"
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_availability.html:19
|
||||
#: pretix/presale/templates/pretixpresale/event/fragment_product_list.html:85
|
||||
@@ -32615,7 +32587,7 @@ msgid ""
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" from %(start_date)s\n"
|
||||
" 從 %(start_date)s\n"
|
||||
" "
|
||||
|
||||
#: pretix/presale/templates/pretixpresale/fragment_calendar_nav.html:12
|
||||
@@ -33132,10 +33104,8 @@ msgid "This feature is only available in test mode."
|
||||
msgstr "此禮品卡只能在測試模式下使用。"
|
||||
|
||||
#: pretix/presale/views/event.py:985
|
||||
#, fuzzy
|
||||
#| msgid "This account is disabled."
|
||||
msgid "Time machine disabled!"
|
||||
msgstr "此帳戶已禁用。"
|
||||
msgstr "時間機器被禁用!"
|
||||
|
||||
#: pretix/presale/views/order.py:368 pretix/presale/views/order.py:433
|
||||
#: pretix/presale/views/order.py:514
|
||||
@@ -33266,14 +33236,12 @@ msgid ""
|
||||
msgstr "你不能將自己添加到候補名單中,因為該商品目前有貨。"
|
||||
|
||||
#: pretix/presale/views/waiting.py:180
|
||||
#, fuzzy, python-brace-format
|
||||
#| msgid ""
|
||||
#| "We've added you to the waiting list. You will receive an email as soon as "
|
||||
#| "this product gets available again."
|
||||
#, python-brace-format
|
||||
msgid ""
|
||||
"We've added you to the waiting list. We will send an email to {email} as "
|
||||
"soon as this product gets available again."
|
||||
msgstr "我們已將你添加到候補名單中。 一旦該產品再次,您將收到一封電子郵件。"
|
||||
msgstr "我們已將您列入候補名單。 "
|
||||
"一旦該產品再次上市,我們將立即向{email}傳送電子郵件。"
|
||||
|
||||
#: pretix/presale/views/waiting.py:208
|
||||
msgid "We could not find you on our waiting list."
|
||||
|
||||
@@ -289,7 +289,7 @@ def _render_nup(input_files: List[str], num_pages: int, output_file: BytesIO, op
|
||||
pass
|
||||
|
||||
try:
|
||||
badges_pdf = PdfReader(input_files.pop())
|
||||
badges_pdf = PdfReader(input_files.pop(0))
|
||||
offset = 0
|
||||
for i, chunk_indices in enumerate(_chunks(range(num_pages), badges_per_page * max_nup_pages)):
|
||||
chunk = []
|
||||
@@ -298,7 +298,7 @@ def _render_nup(input_files: List[str], num_pages: int, output_file: BytesIO, op
|
||||
# file has beforehand
|
||||
if j - offset >= len(badges_pdf.pages):
|
||||
offset += len(badges_pdf.pages)
|
||||
badges_pdf = PdfReader(input_files.pop())
|
||||
badges_pdf = PdfReader(input_files.pop(0))
|
||||
chunk.append(badges_pdf.pages[j - offset])
|
||||
# Reset some internal state from pypdf. This will make it a little slower, but will prevent us from
|
||||
# running out of memory if we process a really large file.
|
||||
|
||||
@@ -37,7 +37,7 @@ class PayPalEnvironment(VendorPayPalEnvironment):
|
||||
'payer_id': self.merchant_id
|
||||
},
|
||||
key=None,
|
||||
algorithm=None,
|
||||
algorithm="none",
|
||||
)
|
||||
return ""
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{% extends "pretixpresale/base.html" %}
|
||||
{% load urlreplace %}
|
||||
{% load i18n %}
|
||||
{% load static %}
|
||||
{% load thumb %}
|
||||
@@ -45,7 +44,7 @@
|
||||
<nav class="locales" aria-label="{% trans "select language" %}">
|
||||
<ul>
|
||||
{% for l in languages %}
|
||||
<li><a href="{% url "presale:locale.set" %}?locale={{ l.code }}&next={{ request.path }}{% if request.META.QUERY_STRING %}%3F{% url_replace request "locale" "" %}{% endif %}" class="{% if l.code == request.LANGUAGE_CODE %}active{% endif %}" rel="nofollow" lang="{{ l.code }}" hreflang="{{ l.code }}"
|
||||
<li><a href="{% url "presale:locale.set" %}?locale={{ l.code }}&next={{ request.path }}{% if request.META.QUERY_STRING %}%3F{{ request.META.QUERY_STRING|urlencode }}{% endif %}" class="{% if l.code == request.LANGUAGE_CODE %}active{% endif %}" rel="nofollow" lang="{{ l.code }}" hreflang="{{ l.code }}"
|
||||
aria-label="{% language l.code %}{% blocktrans trimmed with language=l.name_local %}
|
||||
Website in {{ language }}
|
||||
{% endblocktrans %}{% endlanguage %}">{{ l.name_local }}</a></li>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{% extends "pretixpresale/base.html" %}
|
||||
{% load urlreplace %}
|
||||
{% load i18n %}
|
||||
{% load static %}
|
||||
{% load thumb %}
|
||||
@@ -27,7 +26,7 @@
|
||||
{% if organizer.settings.locales|length > 1 %}
|
||||
<nav class="locales" aria-label="{% trans "select language" %}">
|
||||
{% for l in languages %}
|
||||
<a href="{% url "presale:locale.set" %}?locale={{ l.code }}&next={{ request.path }}{% if request.META.QUERY_STRING %}%3F{% url_replace request "locale" "" %}{% endif %}" class="{% if l.code == request.LANGUAGE_CODE %}active{% endif %}" rel="nofollow"
|
||||
<a href="{% url "presale:locale.set" %}?locale={{ l.code }}&next={{ request.path }}%3F{{ request.META.QUERY_STRING|urlencode }}" class="{% if l.code == request.LANGUAGE_CODE %}active{% endif %}" rel="nofollow"
|
||||
lang="{{ l.code }}" hreflang="{{ l.code }}"
|
||||
aria-label="{% language l.code %}{% blocktrans trimmed with language=l.name_local %}
|
||||
Website in {{ language }}
|
||||
|
||||
@@ -169,7 +169,7 @@ pre[lang=is], input[lang=is], textarea[lang=is], div[lang=is] { background-image
|
||||
pre[lang=it], input[lang=it], textarea[lang=it], div[lang=it] { background-image: url(static('pretixbase/img/flags/it.png')); }
|
||||
pre[lang=jm], input[lang=jm], textarea[lang=jm], div[lang=jm] { background-image: url(static('pretixbase/img/flags/jm.png')); }
|
||||
pre[lang=jo], input[lang=jo], textarea[lang=jo], div[lang=jo] { background-image: url(static('pretixbase/img/flags/jo.png')); }
|
||||
pre[lang=jp], input[lang=jp], textarea[lang=jp], div[lang=jp] { background-image: url(static('pretixbase/img/flags/jp.png')); }
|
||||
pre[lang=ja], input[lang=ja], textarea[lang=ja], div[lang=ja] { background-image: url(static('pretixbase/img/flags/jp.png')); }
|
||||
pre[lang=ke], input[lang=ke], textarea[lang=ke], div[lang=ke] { background-image: url(static('pretixbase/img/flags/ke.png')); }
|
||||
pre[lang=kg], input[lang=kg], textarea[lang=kg], div[lang=kg] { background-image: url(static('pretixbase/img/flags/kg.png')); }
|
||||
pre[lang=kh], input[lang=kh], textarea[lang=kh], div[lang=kh] { background-image: url(static('pretixbase/img/flags/kh.png')); }
|
||||
|
||||
@@ -1133,6 +1133,49 @@ def test_order_mark_paid_expired_seat_taken(client, env):
|
||||
assert o.status == Order.STATUS_EXPIRED
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_order_mark_paid_expired_blocked(client, env):
|
||||
with scopes_disabled():
|
||||
o = Order.objects.get(id=env[2].id)
|
||||
o.expires = now() - timedelta(days=5)
|
||||
o.status = Order.STATUS_EXPIRED
|
||||
o.sales_channel = env[0].organizer.sales_channels.get(identifier="bar")
|
||||
olddate = o.expires
|
||||
o.save()
|
||||
seat_a1 = env[0].seats.create(seat_number="A1", product=env[3], seat_guid="A1", blocked=True)
|
||||
p = o.positions.first()
|
||||
p.seat = seat_a1
|
||||
p.save()
|
||||
|
||||
q = Quota.objects.create(event=env[0], size=100)
|
||||
q.items.add(env[3])
|
||||
client.login(email='dummy@dummy.dummy', password='dummy')
|
||||
response = client.post('/control/event/dummy/dummy/orders/FOO/transition', {
|
||||
'status': 'p',
|
||||
'payment_date': now().date().isoformat(),
|
||||
'amount': str(o.pending_sum),
|
||||
'force': 'on'
|
||||
}, follow=True)
|
||||
assert b'alert-danger' in response.content
|
||||
with scopes_disabled():
|
||||
o = Order.objects.get(id=env[2].id)
|
||||
assert o.expires.strftime("%Y-%m-%d %H:%M:%S") == olddate.strftime("%Y-%m-%d %H:%M:%S")
|
||||
assert o.status == Order.STATUS_EXPIRED
|
||||
|
||||
env[0].settings.seating_allow_blocked_seats_for_channel = ["bar"]
|
||||
|
||||
response = client.post('/control/event/dummy/dummy/orders/FOO/transition', {
|
||||
'status': 'p',
|
||||
'payment_date': now().date().isoformat(),
|
||||
'amount': str(o.pending_sum),
|
||||
'force': 'on'
|
||||
}, follow=True)
|
||||
assert b'alert-success' in response.content
|
||||
with scopes_disabled():
|
||||
o = Order.objects.get(id=env[2].id)
|
||||
assert o.status == Order.STATUS_PAID
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_order_go_lowercase(client, env):
|
||||
client.login(email='dummy@dummy.dummy', password='dummy')
|
||||
|
||||
Reference in New Issue
Block a user