Compare commits

..

2 Commits

Author SHA1 Message Date
Raphael Michel
73bec00d0c Update src/pretix/control/forms/filter.py 2023-04-17 09:34:56 +02:00
Maximilian Richt
879ae386ac Add checkin requires attention to advanced order search 2023-04-12 10:31:24 +02:00
158 changed files with 65504 additions and 74337 deletions

View File

@@ -6,7 +6,7 @@
version: 2
updates:
- package-ecosystem: "pip"
directory: "/"
directory: "/src"
schedule:
interval: "daily"
versioning-strategy: increase

View File

@@ -38,6 +38,7 @@ jobs:
run: sudo apt update && sudo apt install gettext
- name: Install Dependencies
run: pip3 install -e ".[dev]"
working-directory: ./src
- name: Compile messages
run: python manage.py compilemessages
working-directory: ./src
@@ -63,6 +64,7 @@ jobs:
run: sudo apt update && sudo apt install enchant-2 hunspell hunspell-de-de aspell-en aspell-de
- name: Install Dependencies
run: pip3 install -e ".[dev]"
working-directory: ./src
- name: Spellcheck translations
run: potypo
working-directory: ./src

View File

@@ -36,6 +36,7 @@ jobs:
${{ runner.os }}-pip-
- name: Install Dependencies
run: pip3 install -e ".[dev]" mysqlclient psycopg2-binary
working-directory: ./src
- name: Run isort
run: isort -c .
working-directory: ./src
@@ -56,6 +57,7 @@ jobs:
${{ runner.os }}-pip-
- name: Install Dependencies
run: pip3 install -e ".[dev]" mysqlclient psycopg2-binary
working-directory: ./src
- name: Run flake8
run: flake8 .
working-directory: ./src

View File

@@ -64,6 +64,7 @@ jobs:
run: sudo apt update && sudo apt install gettext mariadb-client
- name: Install Python dependencies
run: pip3 install --ignore-requires-python -e ".[dev]" mysqlclient psycopg2-binary # We ignore that flake8 needs newer python as we don't run flake8 during tests
working-directory: ./src
- name: Run checks
run: python manage.py check
working-directory: ./src

2
.gitignore vendored
View File

@@ -1,6 +1,4 @@
env/
build/
dist/
.coverage
htmlcov/
.ropeproject

View File

@@ -5,8 +5,8 @@ tests:
- virtualenv env
- source env/bin/activate
- pip install -U pip wheel setuptools
- XDG_CACHE_HOME=/cache pip3 install -e ".[dev]"
- cd src
- XDG_CACHE_HOME=/cache pip3 install -e ".[dev]"
- python manage.py check
- make all compress
- py.test --reruns 3 -n 3 tests
@@ -21,15 +21,14 @@ pypi:
- virtualenv env
- source env/bin/activate
- pip install -U pip wheel setuptools check-manifest twine
- cd src
- XDG_CACHE_HOME=/cache pip3 install -e ".[dev]"
- python setup.py sdist
- pip install dist/pretix-*.tar.gz
- python -m pretix migrate
- python -m pretix check
- cd src
- make npminstall
- cd ..
- check-manifest
- make npminstall
- python setup.py sdist bdist_wheel
- twine check dist/*
- twine upload dist/*

View File

@@ -19,8 +19,6 @@ RUN apt-get update && \
python3-dev \
sudo \
supervisor \
libmaxminddb0 \
libmaxminddb-dev \
zlib1g-dev && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
@@ -41,6 +39,18 @@ RUN apt-get update && \
ENV LC_ALL=C.UTF-8 \
DJANGO_SETTINGS_MODULE=production_settings
# To copy only the requirements files needed to install from PIP
COPY src/setup.py /pretix/src/setup.py
RUN pip3 install -U \
pip \
setuptools \
wheel && \
cd /pretix/src && \
PRETIX_DOCKER_BUILD=TRUE pip3 install \
-e ".[memcached,mysql]" \
gunicorn django-extensions ipython && \
rm -rf ~/.cache/pip
COPY deployment/docker/pretix.bash /usr/local/bin/pretix
COPY deployment/docker/supervisord /etc/supervisord
COPY deployment/docker/supervisord.all.conf /etc/supervisord.all.conf
@@ -48,18 +58,9 @@ COPY deployment/docker/supervisord.web.conf /etc/supervisord.web.conf
COPY deployment/docker/nginx.conf /etc/nginx/nginx.conf
COPY deployment/docker/nginx-max-body-size.conf /etc/nginx/conf.d/nginx-max-body-size.conf
COPY deployment/docker/production_settings.py /pretix/src/production_settings.py
COPY pyproject.toml /pretix/pyproject.toml
COPY src /pretix/src
RUN pip3 install -U \
pip \
setuptools \
wheel && \
cd /pretix && \
PRETIX_DOCKER_BUILD=TRUE pip3 install \
-e ".[memcached,mysql]" \
gunicorn django-extensions ipython && \
rm -rf ~/.cache/pip
RUN cd /pretix/src && python setup.py install
RUN chmod +x /usr/local/bin/pretix && \
rm /etc/nginx/sites-enabled/default && \

View File

@@ -1,47 +0,0 @@
include LICENSE
include README.rst
include src/Makefile
global-include *.proto
recursive-include src/pretix/static *
recursive-include src/pretix/static.dist *
recursive-include src/pretix/locale *
recursive-include src/pretix/helpers/locale *
recursive-include src/pretix/base/templates *
recursive-include src/pretix/control/templates *
recursive-include src/pretix/presale/templates *
recursive-include src/pretix/plugins/banktransfer/templates *
recursive-include src/pretix/plugins/banktransfer/static *
recursive-include src/pretix/plugins/manualpayment/templates *
recursive-include src/pretix/plugins/manualpayment/static *
recursive-include src/pretix/plugins/paypal/templates *
recursive-include src/pretix/plugins/paypal/static *
recursive-include src/pretix/plugins/paypal2/templates *
recursive-include src/pretix/plugins/paypal2/static *
recursive-include src/pretix/plugins/src/pretixdroid/templates *
recursive-include src/pretix/plugins/src/pretixdroid/static *
recursive-include src/pretix/plugins/sendmail/templates *
recursive-include src/pretix/plugins/statistics/templates *
recursive-include src/pretix/plugins/statistics/static *
recursive-include src/pretix/plugins/stripe/templates *
recursive-include src/pretix/plugins/stripe/static *
recursive-include src/pretix/plugins/ticketoutputpdf/templates *
recursive-include src/pretix/plugins/ticketoutputpdf/static *
recursive-include src/pretix/plugins/badges/templates *
recursive-include src/pretix/plugins/badges/static *
recursive-include src/pretix/plugins/returnurl/templates *
recursive-include src/pretix/plugins/returnurl/static *
recursive-include src/pretix/plugins/webcheckin/templates *
recursive-include src/pretix/plugins/webcheckin/static *
recursive-include src *.cfg
recursive-include src *.csv
recursive-include src *.gitkeep
recursive-include src *.jpg
recursive-include src *.json
recursive-include src *.py
recursive-include src *.svg
recursive-include src *.txt
recursive-include src Makefile
recursive-exclude doc *
recursive-exclude deployment *
recursive-exclude res *

View File

@@ -481,18 +481,3 @@ You can configure the maximum file size for uploading various files::
; Max upload size for other files in MiB, defaults to 10 MiB
; This includes all file upload type order questions
max_size_other = 100
GeoIP
-----
pretix can optionally make use of a GeoIP database for some features. It needs a file in ``mmdb`` format, for example
`GeoLite2`_ or `GeoAcumen`_::
[geoip]
path=/var/geoipdata/
filename_country=GeoLite2-Country.mmdb
.. _GeoAcumen: https://github.com/geoacumen/geoacumen-country
.. _GeoLite2: https://dev.maxmind.com/geoip/geolite2-free-geolocation-data

View File

@@ -16,7 +16,7 @@ Manual installation
You can use ``pip`` to update pretix directly to the development branch. Then, upgrade as usual::
$ source /var/pretix/venv/bin/activate
(venv)$ pip3 install -U "git+https://github.com/pretix/pretix.git#egg=pretix"
(venv)$ pip3 install -U "git+https://github.com/pretix/pretix.git#egg=pretix&subdirectory=src"
(venv)$ python -m pretix migrate
(venv)$ python -m pretix rebuild
(venv)$ python -m pretix updatestyles

View File

@@ -58,11 +58,11 @@ If you do not have a recent installation of ``nodejs``, install it now::
To make sure it is on your path variable, close and reopen your terminal. Now, install the Python-level dependencies of pretix::
cd src/
pip3 install -e ".[dev]"
Next, you need to copy the SCSS files from the source folder to the STATIC_ROOT directory::
cd src/
python manage.py collectstatic --noinput
Then, create the local database::
@@ -150,13 +150,6 @@ Add this to your ``src/pretix.cfg``::
Then execute ``python -m smtpd -n -c DebuggingServer localhost:1025``.
Working with periodic tasks
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Periodic tasks (like sendmail rules) are run when an external scheduler (like cron)
triggers the ``runperiodic`` command.
To run periodic tasks, execute ``python manage.py runperiodic``.
Working with translations
^^^^^^^^^^^^^^^^^^^^^^^^^
If you want to translate new strings that are not yet known to the translation system,

View File

@@ -1,10 +1,10 @@
sphinx==6.2.*
sphinx==6.1.*
jinja2==3.1.*
sphinx-rtd-theme
sphinxcontrib-httpdomain
sphinxcontrib-images
sphinxcontrib-jquery
sphinxcontrib-spelling==8.*
sphinxcontrib-spelling==7.*
sphinxemoji
pygments-markdown-lexer
pyenchant==3.2.*

View File

@@ -1,11 +1,11 @@
-e ../
sphinx==6.2.*
-e ../src/
sphinx==6.1.*
jinja2==3.1.*
sphinx-rtd-theme
sphinxcontrib-httpdomain
sphinxcontrib-images
sphinxcontrib-jquery
sphinxcontrib-spelling==8.*
sphinxcontrib-spelling==7.*
sphinxemoji
pygments-markdown-lexer
pyenchant==3.2.*

View File

@@ -1,185 +0,0 @@
[project]
name = "pretix"
dynamic = ["version"]
description = "Reinventing presales, one ticket at a time"
readme = "README.rst"
requires-python = ">=3.9"
license = {file = "LICENSE"}
keywords = ["tickets", "web", "shop", "ecommerce"]
authors = [
{name = "pretix team", email = "support@pretix.eu"},
]
maintainers = [
{name = "pretix team", email = "support@pretix.eu"},
]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Other Audience",
"Topic :: Internet :: WWW/HTTP :: Dynamic Content",
"Environment :: Web Environment",
"License :: OSI Approved :: GNU Affero General Public License v3",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Framework :: Django :: 3.2",
]
dependencies = [
# Note that many of these are repeated as build-time dependencies down below -- change them too in case of updates!
"arabic-reshaper==3.0.0", # Support for Arabic in reportlab
"babel",
"BeautifulSoup4==4.12.*",
"bleach==5.0.*",
"celery==5.2.*",
"chardet==5.1.*",
"cryptography>=3.4.2",
"css-inline==0.8.*",
"defusedcsv>=1.1.0",
"dj-static",
"Django==3.2.*,>=3.2.18",
"django-bootstrap3==23.1.*",
"django-compressor==4.3.*",
"django-countries==7.5.*",
"django-filter==23.1",
"django-formset-js-improved==0.5.0.3",
"django-formtools==2.4",
"django-hierarkey==1.1.*",
"django-hijack==3.3.*",
"django-i18nfield==1.9.*,>=1.9.4",
"django-libsass==0.9",
"django-localflavor==4.0",
"django-markup",
"django-mysql",
"django-oauth-toolkit==2.2.*",
"django-otp==1.1.*",
"django-phonenumber-field==7.0.*",
"django-redis==5.2.*",
"django-scopes==1.2.*",
"django-statici18n==2.3.*",
"djangorestframework==3.14.*",
"dnspython==2.2.*",
"drf_ujson2==1.7.*",
"geoip2==4.*",
"importlib_metadata==6.6.*", # Polyfill, we can probably drop this once we require Python 3.10+
"isoweek",
"jsonschema",
"kombu==5.2.*",
"libsass==0.22.*",
"lxml",
"markdown==3.4.3", # 3.3.5 requires importlib-metadata>=4.4, but django-bootstrap3 requires importlib-metadata<3.
# We can upgrade markdown again once django-bootstrap3 upgrades or once we drop Python 3.6 and 3.7
"mt-940==4.23.*",
"oauthlib==3.2.*",
"openpyxl==3.1.*",
"packaging",
"paypalrestsdk==1.13.*",
"paypal-checkout-serversdk==1.0.*",
"PyJWT==2.6.*",
"phonenumberslite==8.13.*",
"Pillow==9.5.*",
"protobuf==4.22.*",
"psycopg2-binary",
"pycountry",
"pycparser==2.21",
"pycryptodome==3.17.*",
"pypdf==3.8.*",
"python-bidi==0.4.*", # Support for Arabic in reportlab
"python-dateutil==2.8.*",
"python-u2flib-server==4.*",
"pytz",
"pyuca",
"qrcode==7.4.*",
"redis==4.5.*,>=4.5.4",
"reportlab==3.6.*",
"requests==2.28.*",
"sentry-sdk==1.15.*",
"sepaxml==2.6.*",
"slimit",
"static3==0.7.*",
"stripe==5.4.*",
"text-unidecode==1.*",
"tlds>=2020041600",
"tqdm==4.*",
"vat_moss_forked==2020.3.20.0.11.0",
"vobject==0.9.*",
"webauthn==0.4.*",
"zeep==4.2.*"
]
[project.optional-dependencies]
memcached = ["pylibmc"]
mysql = ["mysqlclient"]
dev = [
"coverage",
"coveralls",
"django-debug-toolbar==4.0.*",
"django-formset-js-improved==0.5.0.3",
"django-oauth-toolkit==2.2.*",
"flake8==6.0.*",
"freezegun",
"isort==5.12.*",
"oauthlib==3.2.*",
"pep8-naming==0.13.*",
"potypo",
"pycodestyle==2.10.*",
"pyflakes==3.0.*",
"pytest-cache",
"pytest-cov",
"pytest-django==4.*",
"pytest-mock==3.10.*",
"pytest-rerunfailures==11.*",
"pytest-sugar",
"pytest-xdist==3.2.*",
"pytest==7.3.*",
"responses",
]
[project.entry-points."distutils.commands"]
build = "pretix._build:CustomBuild"
build_ext = "pretix._build:CustomBuildExt"
[build-system]
requires = [
"setuptools",
"setuptools-rust",
"wheel",
"importlib_metadata",
# These are runtime dependencies that we unfortunately need to be import in the step that generates
# all CSS and JS asset files. We should keep their versions in sync with the definition above.
"babel",
"Django==3.2.*,>=3.2.18",
"django-bootstrap3==23.1.*",
"django-compressor==4.3.*",
"django-countries==7.5.*",
"django-formtools==2.4",
"django-hierarkey==1.1.*",
"django-i18nfield==1.9.*,>=1.9.4",
"django-libsass==0.9",
"django-phonenumber-field==7.0.*",
"django-statici18n==2.3.*",
"djangorestframework==3.14.*",
"libsass==0.22.*",
"phonenumberslite==8.13.*",
"pycountry",
"pyuca",
"slimit",
]
[project.urls]
homepage = "https://pretix.eu"
documentation = "https://docs.pretix.eu"
repository = "https://github.com/pretix/pretix.git"
changelog = "https://pretix.eu/about/en/blog/"
[tool.setuptools]
include-package-data = true
[tool.setuptools.dynamic]
version = {attr = "pretix.__version__"}
[tool.setuptools.packages.find]
where = ["src"]
include = ["pretix*"]
namespaces = false

View File

@@ -1,40 +0,0 @@
[check-manifest]
ignore =
env/**
doc/*
deployment/*
res/*
src/.update-locales
src/Makefile
src/manage.py
src/pretix/icons/*
src/pretix/static.dist/**
src/pretix/static/jsi18n/**
src/requirements.txt
src/requirements/*
src/tests/*
src/tests/api/*
src/tests/base/*
src/tests/control/*
src/tests/testdummy/*
src/tests/templates/*
src/tests/presale/*
src/tests/doc/*
src/tests/helpers/*
src/tests/media/*
src/tests/multidomain/*
src/tests/plugins/*
src/tests/plugins/badges/*
src/tests/plugins/banktransfer/*
src/tests/plugins/paypal/*
src/tests/plugins/paypal2/*
src/tests/plugins/pretixdroid/*
src/tests/plugins/stripe/*
src/tests/plugins/sendmail/*
src/tests/plugins/ticketoutputpdf/*
.*
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Dockerfile
SECURITY.md

View File

@@ -1,26 +0,0 @@
#
# This file is part of pretix (Community Edition).
#
# Copyright (C) 2014-2020 Raphael Michel and contributors
# Copyright (C) 2020-2021 rami.io GmbH and contributors
#
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
# Public License as published by the Free Software Foundation in version 3 of the License.
#
# ADDITIONAL TERMS APPLY: Pursuant to Section 7 of the GNU Affero General Public License, additional terms are
# applicable granting you additional permissions and placing additional restrictions on your usage of this software.
# Please refer to the pretix LICENSE file to obtain the full terms applicable to this work. If you did not receive
# this file, see <https://pretix.eu/about/en/license>.
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
# details.
#
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
# <https://www.gnu.org/licenses/>.
#
import setuptools
if __name__ == "__main__":
setuptools.setup()

33
src/MANIFEST.in Normal file
View File

@@ -0,0 +1,33 @@
include LICENSE
include README.rst
global-include *.proto
recursive-include pretix/static *
recursive-include pretix/static.dist *
recursive-include pretix/locale *
recursive-include pretix/helpers/locale *
recursive-include pretix/base/templates *
recursive-include pretix/control/templates *
recursive-include pretix/presale/templates *
recursive-include pretix/plugins/banktransfer/templates *
recursive-include pretix/plugins/banktransfer/static *
recursive-include pretix/plugins/manualpayment/templates *
recursive-include pretix/plugins/manualpayment/static *
recursive-include pretix/plugins/paypal/templates *
recursive-include pretix/plugins/paypal/static *
recursive-include pretix/plugins/paypal2/templates *
recursive-include pretix/plugins/paypal2/static *
recursive-include pretix/plugins/pretixdroid/templates *
recursive-include pretix/plugins/pretixdroid/static *
recursive-include pretix/plugins/sendmail/templates *
recursive-include pretix/plugins/statistics/templates *
recursive-include pretix/plugins/statistics/static *
recursive-include pretix/plugins/stripe/templates *
recursive-include pretix/plugins/stripe/static *
recursive-include pretix/plugins/ticketoutputpdf/templates *
recursive-include pretix/plugins/ticketoutputpdf/static *
recursive-include pretix/plugins/badges/templates *
recursive-include pretix/plugins/badges/static *
recursive-include pretix/plugins/returnurl/templates *
recursive-include pretix/plugins/returnurl/static *
recursive-include pretix/plugins/webcheckin/templates *
recursive-include pretix/plugins/webcheckin/static *

View File

@@ -19,4 +19,4 @@
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
# <https://www.gnu.org/licenses/>.
#
__version__ = "4.19.0"
__version__ = "4.19.0.dev0"

View File

@@ -1,251 +0,0 @@
#
# This file is part of pretix (Community Edition).
#
# Copyright (C) 2014-2020 Raphael Michel and contributors
# Copyright (C) 2020-2021 rami.io GmbH and contributors
#
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
# Public License as published by the Free Software Foundation in version 3 of the License.
#
# ADDITIONAL TERMS APPLY: Pursuant to Section 7 of the GNU Affero General Public License, additional terms are
# applicable granting you additional permissions and placing additional restrictions on your usage of this software.
# Please refer to the pretix LICENSE file to obtain the full terms applicable to this work. If you did not receive
# this file, see <https://pretix.eu/about/en/license>.
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
# details.
#
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
# <https://www.gnu.org/licenses/>.
#
import os
import django.conf.locale
from pycountry import currencies
from django.utils.translation import gettext_lazy as _ # NOQA
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
USE_I18N = True
USE_L10N = True
USE_TZ = True
INSTALLED_APPS = [
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.humanize',
'pretix.base',
'pretix.control',
'pretix.presale',
'pretix.multidomain',
'pretix.api',
'pretix.helpers',
'rest_framework',
'djangoformsetjs',
'compressor',
'bootstrap3',
'pretix.plugins.banktransfer',
'pretix.plugins.stripe',
'pretix.plugins.paypal',
'pretix.plugins.paypal2',
'pretix.plugins.ticketoutputpdf',
'pretix.plugins.sendmail',
'pretix.plugins.statistics',
'pretix.plugins.reports',
'pretix.plugins.checkinlists',
'pretix.plugins.pretixdroid',
'pretix.plugins.badges',
'pretix.plugins.manualpayment',
'pretix.plugins.returnurl',
'pretix.plugins.webcheckin',
'django_countries',
'oauth2_provider',
'phonenumber_field',
'statici18n',
]
FORMAT_MODULE_PATH = [
'pretix.helpers.formats',
]
ALL_LANGUAGES = [
('en', _('English')),
('de', _('German')),
('de-informal', _('German (informal)')),
('ar', _('Arabic')),
('zh-hans', _('Chinese (simplified)')),
('cs', _('Czech')),
('da', _('Danish')),
('nl', _('Dutch')),
('nl-informal', _('Dutch (informal)')),
('fr', _('French')),
('fi', _('Finnish')),
('gl', _('Galician')),
('el', _('Greek')),
('it', _('Italian')),
('lv', _('Latvian')),
('pl', _('Polish')),
('pt-pt', _('Portuguese (Portugal)')),
('pt-br', _('Portuguese (Brazil)')),
('ro', _('Romanian')),
('ru', _('Russian')),
('es', _('Spanish')),
('tr', _('Turkish')),
('uk', _('Ukrainian')),
]
LANGUAGES_OFFICIAL = {
'en', 'de', 'de-informal'
}
LANGUAGES_RTL = {
'ar', 'hw'
}
LANGUAGES_INCUBATING = {
'pl', 'fi', 'pt-br', 'gl',
}
LOCALE_PATHS = [
os.path.join(os.path.dirname(__file__), 'locale'),
]
EXTRA_LANG_INFO = {
'de-informal': {
'bidi': False,
'code': 'de-informal',
'name': 'German (informal)',
'name_local': 'Deutsch',
'public_code': 'de',
},
'nl-informal': {
'bidi': False,
'code': 'nl-informal',
'name': 'Dutch (informal)',
'name_local': 'Nederlands',
'public_code': 'nl',
},
'fr': {
'bidi': False,
'code': 'fr',
'name': 'French',
'name_local': 'Français'
},
'lv': {
'bidi': False,
'code': 'lv',
'name': 'Latvian',
'name_local': 'Latviešu'
},
'pt-pt': {
'bidi': False,
'code': 'pt-pt',
'name': 'Portuguese',
'name_local': 'Português',
},
}
django.conf.locale.LANG_INFO.update(EXTRA_LANG_INFO)
template_loaders = (
'django.template.loaders.filesystem.Loader',
'pretix.helpers.template_loaders.AppLoader',
)
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(BASE_DIR, 'templates'),
],
'OPTIONS': {
'context_processors': [
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
"django.template.context_processors.request",
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
'pretix.base.context.contextprocessor',
'pretix.control.context.contextprocessor',
'pretix.presale.context.contextprocessor',
],
'loaders': template_loaders
},
},
]
STATIC_ROOT = os.path.join(os.path.dirname(__file__), 'static.dist')
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'compressor.finders.CompressorFinder',
)
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'pretix/static')
] if os.path.exists(os.path.join(BASE_DIR, 'pretix/static')) else []
STATICI18N_ROOT = os.path.join(BASE_DIR, "pretix/static")
STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.ManifestStaticFilesStorage'
# if os.path.exists(os.path.join(DATA_DIR, 'static')):
# STATICFILES_DIRS.insert(0, os.path.join(DATA_DIR, 'static'))
COMPRESS_PRECOMPILERS = (
('text/x-scss', 'django_libsass.SassCompiler'),
('text/vue', 'pretix.helpers.compressor.VueCompiler'),
)
COMPRESS_OFFLINE_CONTEXT = {
'basetpl': 'empty.html',
}
COMPRESS_ENABLED = True
COMPRESS_OFFLINE = True
COMPRESS_FILTERS = {
'css': (
# CssAbsoluteFilter is incredibly slow, especially when dealing with our _flags.scss
# However, we don't need it if we consequently use the static() function in Sass
# 'compressor.filters.css_default.CssAbsoluteFilter',
'compressor.filters.cssmin.rCSSMinFilter',
),
'js': (
'compressor.filters.jsmin.JSMinFilter',
)
}
CURRENCIES = list(currencies)
CURRENCY_PLACES = {
# default is 2
'BIF': 0,
'CLP': 0,
'DJF': 0,
'GNF': 0,
'JPY': 0,
'KMF': 0,
'KRW': 0,
'MGA': 0,
'PYG': 0,
'RWF': 0,
'VND': 0,
'VUV': 0,
'XAF': 0,
'XOF': 0,
'XPF': 0,
}
PRETIX_EMAIL_NONE_VALUE = 'none@well-known.pretix.eu'
PRETIX_PRIMARY_COLOR = '#8E44B3'
# pretix includes caching options for some special situations where full HTML responses are cached. This might be
# stressful for some cache setups so it is enabled by default and currently can't be enabled through pretix.cfg
CACHE_LARGE_VALUES_ALLOWED = False
CACHE_LARGE_VALUES_ALIAS = 'default'

View File

@@ -1,74 +0,0 @@
#
# This file is part of pretix (Community Edition).
#
# Copyright (C) 2014-2020 Raphael Michel and contributors
# Copyright (C) 2020-2021 rami.io GmbH and contributors
#
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
# Public License as published by the Free Software Foundation in version 3 of the License.
#
# ADDITIONAL TERMS APPLY: Pursuant to Section 7 of the GNU Affero General Public License, additional terms are
# applicable granting you additional permissions and placing additional restrictions on your usage of this software.
# Please refer to the pretix LICENSE file to obtain the full terms applicable to this work. If you did not receive
# this file, see <https://pretix.eu/about/en/license>.
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
# details.
#
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
# <https://www.gnu.org/licenses/>.
#
import os
import shutil
import subprocess
from setuptools.command.build import build
from setuptools.command.build_ext import build_ext
here = os.path.abspath(os.path.dirname(__file__))
npm_installed = False
def npm_install():
global npm_installed
if not npm_installed:
# keep this in sync with Makefile!
node_prefix = os.path.join(here, 'static.dist', 'node_prefix')
os.makedirs(node_prefix, exist_ok=True)
shutil.copytree(os.path.join(here, 'static', 'npm_dir'), node_prefix, dirs_exist_ok=True)
subprocess.check_call('npm install', shell=True, cwd=node_prefix)
npm_installed = True
class CustomBuild(build):
def run(self):
if "PRETIX_DOCKER_BUILD" in os.environ:
return # this is a hack to allow calling this file early in our docker build to make use of caching
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "pretix._build_settings")
os.environ.setdefault("PRETIX_IGNORE_CONFLICTS", "True")
import django
django.setup()
from django.conf import settings
from django.core import management
settings.COMPRESS_ENABLED = True
settings.COMPRESS_OFFLINE = True
npm_install()
management.call_command('compilemessages', verbosity=1)
management.call_command('compilejsi18n', verbosity=1)
management.call_command('collectstatic', verbosity=1, interactive=False)
management.call_command('compress', verbosity=1)
build.run(self)
class CustomBuildExt(build_ext):
def run(self):
if "PRETIX_DOCKER_BUILD" in os.environ:
return # this is a hack to allow calling this file early in our docker build to make use of caching
npm_install()
build_ext.run(self)

View File

@@ -1,48 +0,0 @@
#
# This file is part of pretix (Community Edition).
#
# Copyright (C) 2014-2020 Raphael Michel and contributors
# Copyright (C) 2020-2021 rami.io GmbH and contributors
#
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General
# Public License as published by the Free Software Foundation in version 3 of the License.
#
# ADDITIONAL TERMS APPLY: Pursuant to Section 7 of the GNU Affero General Public License, additional terms are
# applicable granting you additional permissions and placing additional restrictions on your usage of this software.
# Please refer to the pretix LICENSE file to obtain the full terms applicable to this work. If you did not receive
# this file, see <https://pretix.eu/about/en/license>.
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
# details.
#
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
# <https://www.gnu.org/licenses/>.
#
"""
This file contains settings that we need at wheel require time. All settings that we only need at runtime are set
in settings.py.
"""
from ._base_settings import * # NOQA
ENTROPY = {
'order_code': 5,
'customer_identifier': 7,
'ticket_secret': 32,
'voucher_code': 16,
'giftcard_secret': 12,
}
MAIL_FROM_ORGANIZERS = 'invalid@invalid'
FILE_UPLOAD_MAX_SIZE_EMAIL_AUTO_ATTACHMENT = 10
FILE_UPLOAD_MAX_SIZE_EMAIL_ATTACHMENT = 10
FILE_UPLOAD_MAX_SIZE_IMAGE = 10
DEFAULT_CURRENCY = 'EUR'
SECRET_KEY = "build-time-secret-key"
HAS_REDIS = False
STATIC_URL = '/static/'
HAS_MEMCACHED = False
HAS_CELERY = False
HAS_GEOIP = False
SENTRY_ENABLED = False

View File

@@ -67,8 +67,8 @@ from pretix.base.models import (
CachedCombinedTicket, CachedTicket, Checkin, Device, EventMetaValue,
Invoice, InvoiceAddress, ItemMetaValue, ItemVariation,
ItemVariationMetaValue, Order, OrderFee, OrderPayment, OrderPosition,
OrderRefund, Quota, ReusableMedium, SubEvent, SubEventMetaValue, TaxRule,
TeamAPIToken, generate_secret,
OrderRefund, Quota, SubEvent, SubEventMetaValue, TaxRule, TeamAPIToken,
generate_secret,
)
from pretix.base.models.orders import (
BlockedTicketSecret, QuestionAnswer, RevokedTicketSecret,
@@ -148,13 +148,9 @@ with scopes_disabled():
else:
code = Q(code__icontains=Order.normalize_code(u))
invoice_nos = {u, u.upper()}
if u.isdigit():
for i in range(2, 12):
invoice_nos.add(u.zfill(i))
matching_invoices = Invoice.objects.filter(
Q(invoice_no__in=invoice_nos)
Q(invoice_no__iexact=u)
| Q(invoice_no__iexact=u.zfill(5))
| Q(full_invoice_no__iexact=u)
).values_list('order_id', flat=True)
@@ -166,15 +162,12 @@ with scopes_disabled():
)
).values('id')
matching_media = ReusableMedium.objects.filter(identifier=u).values_list('linked_orderposition__order_id', flat=True)
mainq = (
code
| Q(email__icontains=u)
| Q(invoice_address__name_cached__icontains=u)
| Q(invoice_address__company__icontains=u)
| Q(pk__in=matching_invoices)
| Q(pk__in=matching_media)
| Q(comment__icontains=u)
| Q(has_pos=True)
)
@@ -321,7 +314,7 @@ class OrderViewSet(viewsets.ModelViewSet):
@action(detail=True, methods=['POST'])
def mark_paid(self, request, **kwargs):
order = self.get_object()
send_mail = request.data.get('send_email', True) if request.data else True
send_mail = request.data.get('send_email', True)
if order.status in (Order.STATUS_PENDING, Order.STATUS_EXPIRED):
@@ -380,7 +373,7 @@ class OrderViewSet(viewsets.ModelViewSet):
@action(detail=True, methods=['POST'])
def mark_canceled(self, request, **kwargs):
send_mail = request.data.get('send_email', True) if request.data else True
send_mail = request.data.get('send_email', True)
comment = request.data.get('comment', None)
cancellation_fee = request.data.get('cancellation_fee', None)
if cancellation_fee:
@@ -439,7 +432,7 @@ class OrderViewSet(viewsets.ModelViewSet):
@action(detail=True, methods=['POST'])
def approve(self, request, **kwargs):
send_mail = request.data.get('send_email', True) if request.data else True
send_mail = request.data.get('send_email', True)
order = self.get_object()
try:
@@ -457,7 +450,7 @@ class OrderViewSet(viewsets.ModelViewSet):
@action(detail=True, methods=['POST'])
def deny(self, request, **kwargs):
send_mail = request.data.get('send_email', True) if request.data else True
send_mail = request.data.get('send_email', True)
comment = request.data.get('comment', '')
order = self.get_object()
@@ -927,7 +920,6 @@ with scopes_disabled():
search = django_filters.CharFilter(method='search_qs')
def search_qs(self, queryset, name, value):
matching_media = ReusableMedium.objects.filter(identifier=value).values_list('linked_orderposition', flat=True)
return queryset.filter(
Q(secret__istartswith=value)
| Q(attendee_name_cached__icontains=value)
@@ -937,7 +929,6 @@ with scopes_disabled():
| Q(order__code__istartswith=value)
| Q(order__invoice_address__name_cached__icontains=value)
| Q(order__email__icontains=value)
| Q(pk__in=matching_media)
)
def has_checkin_qs(self, queryset, name, value):
@@ -1453,7 +1444,7 @@ class PaymentViewSet(CreateModelMixin, viewsets.ReadOnlyModelViewSet):
return order.payments.all()
def create(self, request, *args, **kwargs):
send_mail = request.data.get('send_email', True) if request.data else True
send_mail = request.data.get('send_email', True)
serializer = OrderPaymentCreateSerializer(data=request.data, context=self.get_serializer_context())
serializer.is_valid(raise_exception=True)
with transaction.atomic():
@@ -1498,7 +1489,7 @@ class PaymentViewSet(CreateModelMixin, viewsets.ReadOnlyModelViewSet):
def confirm(self, request, **kwargs):
payment = self.get_object()
force = request.data.get('force', False)
send_mail = request.data.get('send_email', True) if request.data else True
send_mail = request.data.get('send_email', True)
if payment.state not in (OrderPayment.PAYMENT_STATE_PENDING, OrderPayment.PAYMENT_STATE_CREATED):
return Response({'detail': 'Invalid state of payment'}, status=status.HTTP_400_BAD_REQUEST)

View File

@@ -94,7 +94,7 @@ class EventDataExporter(ListExporter):
]
def get_filename(self):
return '{}_events'.format(self.organizer.slug)
return '{}_events'.format(self.events.first().organizer.slug)
@receiver(register_multievent_data_exporters, dispatch_uid="multiexporter_eventdata")

View File

@@ -155,7 +155,7 @@ class InvoiceExporter(InvoiceExporterMixin, BaseExporter):
self.progress_callback(counter / total * 100)
if self.is_multievent:
filename = '{}_invoices.zip'.format(self.organizer.slug)
filename = '{}_invoices.zip'.format(self.events.first().organizer.slug)
else:
filename = '{}_invoices.zip'.format(self.event.slug)
@@ -415,7 +415,7 @@ class InvoiceDataExporter(InvoiceExporterMixin, MultiSheetListExporter):
def get_filename(self):
if self.is_multievent:
return '{}_invoices'.format(self.organizer.slug)
return '{}_invoices'.format(self.events.first().organizer.slug)
else:
return '{}_invoices'.format(self.event.slug)

View File

@@ -219,7 +219,7 @@ class ItemDataExporter(ListExporter):
def get_filename(self):
if self.is_multievent:
return '{}_products'.format(self.organizer.slug)
return '{}_products'.format(self.events.first().organizer.slug)
return '{}_products'.format(self.event.slug)
def prepare_xlsx_sheet(self, ws):

View File

@@ -63,7 +63,7 @@ class MailExporter(BaseExporter):
| set(a['attendee_email'] for a in pos if a['attendee_email']))
if self.is_multievent:
return '{}_pretixemails.txt'.format(self.organizer.slug), 'text/plain', data.encode("utf-8")
return '{}_pretixemails.txt'.format(self.events.first().organizer.slug), 'text/plain', data.encode("utf-8")
else:
return '{}_pretixemails.txt'.format(self.event.slug), 'text/plain', data.encode("utf-8")

View File

@@ -688,8 +688,8 @@ class OrderListExporter(MultiSheetListExporter):
row += [
_('Yes') if op.blocked else '',
date_format(op.valid_from.astimezone(tz), 'SHORT_DATETIME_FORMAT') if op.valid_from else '',
date_format(op.valid_until.astimezone(tz), 'SHORT_DATETIME_FORMAT') if op.valid_until else '',
date_format(op.valid_from, 'SHORT_DATETIME_FORMAT') if op.valid_from else '',
date_format(op.valid_until, 'SHORT_DATETIME_FORMAT') if op.valid_until else '',
]
row.append(order.comment)
row.append(order.custom_followup_at.strftime("%Y-%m-%d") if order.custom_followup_at else "")
@@ -754,7 +754,7 @@ class OrderListExporter(MultiSheetListExporter):
def get_filename(self):
if self.is_multievent:
return '{}_orders'.format(self.organizer.slug)
return '{}_orders'.format(self.events.first().organizer.slug)
else:
return '{}_orders'.format(self.event.slug)
@@ -880,7 +880,7 @@ class PaymentListExporter(ListExporter):
def get_filename(self):
if self.is_multievent:
return '{}_payments'.format(self.organizer.slug)
return '{}_payments'.format(self.events.first().organizer.slug)
else:
return '{}_payments'.format(self.event.slug)
@@ -1037,7 +1037,7 @@ class GiftcardRedemptionListExporter(ListExporter):
def get_filename(self):
if self.is_multievent:
return '{}_giftcardredemptions'.format(self.organizer.slug)
return '{}_giftcardredemptions'.format(self.events.first().organizer.slug)
else:
return '{}_giftcardredemptions'.format(self.event.slug)

View File

@@ -45,7 +45,6 @@ import pytz
from django import forms
from django.conf import settings
from django.contrib import messages
from django.contrib.gis.geoip2 import GeoIP2
from django.core.exceptions import ValidationError
from django.core.files.uploadedfile import SimpleUploadedFile
from django.core.validators import (
@@ -92,7 +91,6 @@ from pretix.helpers.countries import (
CachedCountries, get_phone_prefixes_sorted_and_localized,
)
from pretix.helpers.escapejson import escapejson_attr
from pretix.helpers.http import get_client_ip
from pretix.helpers.i18n import get_format_without_seconds
from pretix.presale.signals import question_form_fields
@@ -353,15 +351,6 @@ class WrappedPhoneNumberPrefixWidget(PhoneNumberPrefixWidget):
return ""
def guess_country_from_request(request, event):
if settings.HAS_GEOIP:
g = GeoIP2()
res = g.country(get_client_ip(request))
if res['country_code'] and len(res['country_code']) == 2:
return Country(res['country_code'])
return guess_country(event)
def guess_country(event):
# Try to guess the initial country from either the country of the merchant
# or the locale. This will hopefully save at least some users some scrolling :)
@@ -393,12 +382,6 @@ def guess_phone_prefix(event):
return get_phone_prefix(country)
def guess_phone_prefix_from_request(request, event):
with language(get_babel_locale()):
country = str(guess_country_from_request(request, event))
return get_phone_prefix(country)
def get_phone_prefix(country):
for prefix, values in _COUNTRY_CODE_TO_REGION_CODE.items():
if country in values:
@@ -581,7 +564,6 @@ class BaseQuestionsForm(forms.Form):
:param cartpos: The cart position the form should be for
:param event: The event this belongs to
"""
request = kwargs.pop('request', None)
cartpos = self.cartpos = kwargs.pop('cartpos', None)
orderpos = self.orderpos = kwargs.pop('orderpos', None)
pos = cartpos or orderpos
@@ -679,7 +661,7 @@ class BaseQuestionsForm(forms.Form):
'autocomplete': 'address-level2',
}),
)
country = (cartpos.country if cartpos else orderpos.country) or guess_country_from_request(request, event)
country = (cartpos.country if cartpos else orderpos.country) or guess_country(event)
add_fields['country'] = CountryField(
countries=CachedCountries
).formfield(
@@ -786,7 +768,7 @@ class BaseQuestionsForm(forms.Form):
help_text=help_text,
widget=forms.Select,
empty_label=' ',
initial=initial.answer if initial else (guess_country_from_request(request, event) if required else None),
initial=initial.answer if initial else (guess_country(event) if required else None),
)
elif q.type == Question.TYPE_CHOICE:
field = forms.ModelChoiceField(
@@ -874,7 +856,7 @@ class BaseQuestionsForm(forms.Form):
initial = None
if not initial:
phone_prefix = guess_phone_prefix_from_request(request, event)
phone_prefix = guess_phone_prefix(event)
if phone_prefix:
initial = "+{}.".format(phone_prefix)
@@ -1010,7 +992,7 @@ class BaseInvoiceAddressForm(forms.ModelForm):
kwargs.setdefault('initial', {})
if not kwargs.get('instance') or not kwargs['instance'].country:
kwargs['initial']['country'] = guess_country_from_request(self.request, self.event)
kwargs['initial']['country'] = guess_country(self.event)
super().__init__(*args, **kwargs)
if not event.settings.invoice_address_vatid:

View File

@@ -49,7 +49,6 @@ class Command(BaseCommand):
except ImportError:
cmd = 'shell'
del options['skip_checks']
del options['print_sql']
if options['print_sql']:
connection.force_debug_cursor = True

View File

@@ -454,7 +454,7 @@ class Voucher(LoggedModel):
@staticmethod
def clean_voucher_code(data, event, pk):
if 'code' in data and Voucher.objects.filter(Q(code__iexact=data['code'].upper()) & Q(event=event) & ~Q(pk=pk)).exists():
if 'code' in data and Voucher.objects.filter(Q(code__iexact=data['code']) & Q(event=event) & ~Q(pk=pk)).exists():
raise ValidationError(_('A voucher with this code already exists.'))
@staticmethod

View File

@@ -219,19 +219,18 @@ class WaitingListEntry(LoggedModel):
self.voucher = v
self.save()
with language(self.locale, self.event.settings.region):
self.send_mail(
self.event.settings.mail_subject_waiting_list,
self.event.settings.mail_text_waiting_list,
get_email_context(
event=self.event,
waiting_list_entry=self,
waiting_list_voucher=v,
event_or_subevent=self.subevent or self.event,
),
user=user,
auth=auth,
)
self.send_mail(
self.event.settings.mail_subject_waiting_list,
self.event.settings.mail_text_waiting_list,
get_email_context(
event=self.event,
waiting_list_entry=self,
waiting_list_voucher=v,
event_or_subevent=self.subevent or self.event,
),
user=user,
auth=auth,
)
def send_mail(self, subject: Union[str, LazyI18nString], template: Union[str, LazyI18nString],
context: Dict[str, Any]=None, log_entry_type: str='pretix.waitinglist.email.sent',

View File

@@ -411,7 +411,7 @@ DEFAULT_VARIABLES = OrderedDict((
"label": _("Validity start date"),
"editor_sample": _("2017-05-31"),
"evaluate": lambda op, order, ev: date_format(
op.valid_from.astimezone(timezone(ev.settings.timezone)),
now().astimezone(timezone(ev.settings.timezone)),
"SHORT_DATE_FORMAT"
) if op.valid_from else ""
}),

View File

@@ -24,11 +24,9 @@ import sys
from enum import Enum
from typing import List
import importlib_metadata as metadata
from django.apps import AppConfig, apps
from django.conf import settings
from django.core.exceptions import ImproperlyConfigured
from packaging.requirements import Requirement
class PluginType(Enum):
@@ -83,11 +81,12 @@ class PluginConfig(AppConfig, metaclass=PluginConfigMeta):
raise ImproperlyConfigured("A pretix plugin config should have a PretixPluginMeta inner class.")
if hasattr(self.PretixPluginMeta, 'compatibility') and not os.environ.get("PRETIX_IGNORE_CONFLICTS") == "True":
req = Requirement(self.PretixPluginMeta.compatibility)
requirement_version = metadata.version(req.name)
if not req.specifier.contains(requirement_version, prereleases=True):
import pkg_resources
try:
pkg_resources.require(self.PretixPluginMeta.compatibility)
except pkg_resources.VersionConflict as e:
print("Incompatible plugins found!")
print("Plugin {} requires you to have {}, but you installed {}.".format(
self.name, req, requirement_version
self.name, e.req, e.dist
))
sys.exit(1)

View File

@@ -740,11 +740,11 @@ def perform_checkin(op: OrderPosition, clist: CheckinList, given_answers: dict,
else:
raise CheckInError(
_('This ticket is only valid after {datetime}.').format(
datetime=date_format(op.valid_from.astimezone(clist.event.timezone), 'SHORT_DATETIME_FORMAT')
datetime=date_format(op.valid_from, 'SHORT_DATETIME_FORMAT')
),
'invalid_time',
_('This ticket is only valid after {datetime}.').format(
datetime=date_format(op.valid_from.astimezone(clist.event.timezone), 'SHORT_DATETIME_FORMAT')
datetime=date_format(op.valid_from, 'SHORT_DATETIME_FORMAT')
),
)
@@ -754,11 +754,11 @@ def perform_checkin(op: OrderPosition, clist: CheckinList, given_answers: dict,
else:
raise CheckInError(
_('This ticket was only valid before {datetime}.').format(
datetime=date_format(op.valid_until.astimezone(clist.event.timezone), 'SHORT_DATETIME_FORMAT')
datetime=date_format(op.valid_until, 'SHORT_DATETIME_FORMAT')
),
'invalid_time',
_('This ticket was only valid before {datetime}.').format(
datetime=date_format(op.valid_until.astimezone(clist.event.timezone), 'SHORT_DATETIME_FORMAT')
datetime=date_format(op.valid_until, 'SHORT_DATETIME_FORMAT')
),
)

View File

@@ -95,18 +95,6 @@ class SendMailException(Exception):
pass
def clean_sender_name(sender_name: str) -> str:
# Emails with @ in their sender name are rejected by some mailservers (e.g. Microsoft) because it looks like
# a phishing attempt.
sender_name = sender_name.replace("@", " ")
# Emails with excessively long sender names are rejected by some mailservers
if len(sender_name) > 75:
sender_name = sender_name[:75] + "..."
return sender_name
def mail(email: Union[str, Sequence[str]], subject: str, template: Union[str, LazyI18nString],
context: Dict[str, Any] = None, event: Event = None, locale: str = None, order: Order = None,
position: OrderPosition = None, *, headers: dict = None, sender: str = None, organizer: Organizer = None,
@@ -208,13 +196,17 @@ def mail(email: Union[str, Sequence[str]], subject: str, template: Union[str, La
settings.MAIL_FROM
)
if event:
sender_name = clean_sender_name(event.settings.mail_from_name or str(event.name))
sender_name = event.settings.mail_from_name or str(event.name)
if len(sender_name) > 75:
sender_name = sender_name[:75] + "..."
sender = formataddr((sender_name, sender))
elif organizer:
sender_name = clean_sender_name(organizer.settings.mail_from_name or str(organizer.name))
sender_name = organizer.settings.mail_from_name or str(organizer.name)
if len(sender_name) > 75:
sender_name = sender_name[:75] + "..."
sender = formataddr((sender_name, sender))
else:
sender = formataddr((clean_sender_name(settings.PRETIX_INSTANCE_NAME), sender))
sender = formataddr((settings.PRETIX_INSTANCE_NAME, sender))
subject = raw_subject = str(subject).replace('\n', ' ').replace('\r', '')[:900]
signature = ""

View File

@@ -391,15 +391,9 @@ def approve_order(order, user=None, send_mail: bool=True, auth=None, force=False
if order.total == Decimal('0.00'):
email_template = order.event.settings.mail_text_order_approved_free
email_subject = order.event.settings.mail_subject_order_approved_free
email_attendees = order.event.settings.mail_send_order_approved_free_attendee
email_attendee_template = order.event.settings.mail_text_order_approved_free_attendee
email_attendee_subject = order.event.settings.mail_subject_order_approved_free_attendee
else:
email_template = order.event.settings.mail_text_order_approved
email_subject = order.event.settings.mail_subject_order_approved
email_attendees = order.event.settings.mail_send_order_approved_attendee
email_attendee_template = order.event.settings.mail_text_order_approved_attendee
email_attendee_subject = order.event.settings.mail_subject_order_approved_attendee
email_context = get_email_context(event=order.event, order=order)
try:
@@ -412,19 +406,6 @@ def approve_order(order, user=None, send_mail: bool=True, auth=None, force=False
except SendMailException:
logger.exception('Order approved email could not be sent')
if email_attendees:
for p in order.positions.all():
if p.addon_to_id is None and p.attendee_email and p.attendee_email != order.email:
email_attendee_context = get_email_context(event=order.event, order=order, position=p)
try:
p.send_mail(
email_attendee_subject, email_attendee_template, email_attendee_context,
'pretix.event.order.email.order_approved', user,
attach_tickets=True,
)
except SendMailException:
logger.exception('Order approved email could not be sent to attendee')
return order.pk
@@ -1451,7 +1432,7 @@ class OrderChangeManager:
MembershipOperation = namedtuple('MembershipOperation', ('position', 'membership'))
CancelOperation = namedtuple('CancelOperation', ('position', 'price_diff'))
AddOperation = namedtuple('AddOperation', ('item', 'variation', 'price', 'addon_to', 'subevent', 'seat', 'membership',
'valid_from', 'valid_until', 'is_bundled'))
'valid_from', 'valid_until'))
SplitOperation = namedtuple('SplitOperation', ('position',))
FeeValueOperation = namedtuple('FeeValueOperation', ('fee', 'value', 'price_diff'))
AddFeeOperation = namedtuple('AddFeeOperation', ('fee', 'price_diff'))
@@ -1681,7 +1662,6 @@ class OrderChangeManager:
except TaxRule.SaleNotAllowed:
raise OrderError(self.error_messages['tax_rule_country_blocked'])
is_bundled = False
if price is None:
raise OrderError(self.error_messages['product_invalid'])
if item.variations.exists() and not variation:
@@ -1690,10 +1670,7 @@ class OrderChangeManager:
raise OrderError(self.error_messages['addon_to_required'])
if addon_to:
if not item.category or item.category_id not in addon_to.item.addons.values_list('addon_category', flat=True):
if addon_to.item.bundles.filter(bundled_item=item, bundled_variation=variation).exists():
is_bundled = True
else:
raise OrderError(self.error_messages['addon_invalid'])
raise OrderError(self.error_messages['addon_invalid'])
if self.order.event.has_subevents and not subevent:
raise OrderError(self.error_messages['subevent_required'])
@@ -1718,7 +1695,7 @@ class OrderChangeManager:
if seat:
self._seatdiff.update([seat])
self._operations.append(self.AddOperation(item, variation, price, addon_to, subevent, seat, membership,
valid_from, valid_until, is_bundled))
valid_from, valid_until))
def split(self, position: OrderPosition):
if self.order.event.settings.invoice_include_free or position.price != Decimal('0.00'):
@@ -2249,7 +2226,6 @@ class OrderChangeManager:
tax_value=op.price.tax, tax_rule=op.item.tax_rule,
positionid=nextposid, subevent=op.subevent, seat=op.seat,
used_membership=op.membership, valid_from=op.valid_from, valid_until=op.valid_until,
is_bundled=op.is_bundled,
)
nextposid += 1
self.order.log_action('pretix.event.order.changed.add', user=self.user, auth=self.auth, data={

View File

@@ -594,7 +594,6 @@ DEFAULTS = {
'form_kwargs': dict(
label=_("Minimum length of invoice number after prefix"),
help_text=_("The part of your invoice number after your prefix will be filled up with leading zeros up to this length, e.g. INV-001 or INV-00001."),
max_value=12,
required=True,
)
},
@@ -1372,10 +1371,9 @@ DEFAULTS = {
'serializer_class': serializers.BooleanField,
'form_class': forms.BooleanField,
'form_kwargs': dict(
label=_("Generate tickets for add-on products and bundled products"),
help_text=_('By default, tickets are only issued for products selected individually, not for add-on products '
'or bundled products. With this option, a separate ticket is issued for every add-on product '
'or bundled product as well.'),
label=_("Generate tickets for add-on products"),
help_text=_('By default, tickets are only issued for products selected individually, not for add-on '
'products. With this option, a separate ticket is issued for every add-on product as well.'),
widget=forms.CheckboxInput(attrs={'data-checkbox-dependency': '#id_ticket_download',
'data-checkbox-dependency-visual': 'on'}),
)
@@ -2275,26 +2273,6 @@ You can select a payment method and perform the payment here:
{url}
Best regards,
Your {event} team"""))
},
'mail_send_order_approved_attendee': {
'type': bool,
'default': 'False'
},
'mail_subject_order_approved_attendee': {
'type': LazyI18nString,
'default': LazyI18nString.from_gettext(gettext_noop("Your event registration: {code}")),
},
'mail_text_order_approved_attendee': {
'type': LazyI18nString,
'default': LazyI18nString.from_gettext(gettext_noop("""Hello,
we approved a ticket ordered for you for {event}.
You can view the details and status of your ticket here:
{url}
Best regards,
Your {event} team"""))
},
@@ -2312,26 +2290,6 @@ at our event. As you only ordered free products, no payment is required.
You can change your order details and view the status of your order at
{url}
Best regards,
Your {event} team"""))
},
'mail_send_order_approved_free_attendee': {
'type': bool,
'default': 'False'
},
'mail_subject_order_approved_free_attendee': {
'type': LazyI18nString,
'default': LazyI18nString.from_gettext(gettext_noop("Your event registration: {code}")),
},
'mail_text_order_approved_free_attendee': {
'type': LazyI18nString,
'default': LazyI18nString.from_gettext(gettext_noop("""Hello,
we approved a ticket ordered for you for {event}.
You can view the details and status of your ticket here:
{url}
Best regards,
Your {event} team"""))
},

View File

@@ -71,7 +71,6 @@ class BaseQuestionsViewMixin:
kwargs = self.question_form_kwargs(cr)
form = self.form_class(event=self.request.event,
prefix=cr.id,
request=self.request,
cartpos=cartpos,
orderpos=orderpos,
all_optional=self.all_optional,

View File

@@ -1191,24 +1191,6 @@ class MailSettingsForm(SettingsForm):
help_text=_("This will only be sent out for non-free orders. Free orders will receive the free order "
"template from below instead."),
)
mail_send_order_approved_attendee = forms.BooleanField(
label=_("Send an email to attendees"),
help_text=_('If the order contains attendees with email addresses different from the person who orders the '
'tickets, the following email will be sent out to the attendees.'),
required=False,
)
mail_subject_order_approved_attendee = I18nFormField(
label=_("Subject sent to attendees"),
required=False,
widget=I18nTextInput,
)
mail_text_order_approved_attendee = I18nFormField(
label=_("Text sent to attendees"),
required=False,
widget=I18nTextarea,
help_text=_("This will only be sent out for non-free orders. Free orders will receive the free order "
"template from below instead."),
)
mail_subject_order_approved_free = I18nFormField(
label=_("Subject for approved free order"),
required=False,
@@ -1221,24 +1203,6 @@ class MailSettingsForm(SettingsForm):
help_text=_("This will only be sent out for free orders. Non-free orders will receive the non-free order "
"template from above instead."),
)
mail_send_order_approved_free_attendee = forms.BooleanField(
label=_("Send an email to attendees"),
help_text=_('If the order contains attendees with email addresses different from the person who orders the '
'tickets, the following email will be sent out to the attendees.'),
required=False,
)
mail_subject_order_approved_free_attendee = I18nFormField(
label=_("Subject sent to attendees"),
required=False,
widget=I18nTextInput,
)
mail_text_order_approved_free_attendee = I18nFormField(
label=_("Text sent to attendees"),
required=False,
widget=I18nTextarea,
help_text=_("This will only be sent out for free orders. Non-free orders will receive the non-free order "
"template from above instead."),
)
mail_subject_order_denied = I18nFormField(
label=_("Subject for denied order"),
required=False,

View File

@@ -256,13 +256,9 @@ class OrderFilterForm(FilterForm):
else:
code = Q(code__icontains=Order.normalize_code(u))
invoice_nos = {u, u.upper()}
if u.isdigit():
for i in range(2, 12):
invoice_nos.add(u.zfill(i))
matching_invoices = Invoice.objects.filter(
Q(invoice_no__in=invoice_nos)
Q(invoice_no__iexact=u)
| Q(invoice_no__iexact=u.zfill(5))
| Q(full_invoice_no__iexact=u)
).values_list('order_id', flat=True)
matching_positions = OrderPosition.objects.filter(
@@ -1008,13 +1004,9 @@ class OrderPaymentSearchFilterForm(forms.Form):
if fdata.get('query'):
u = fdata.get('query')
invoice_nos = {u, u.upper()}
if u.isdigit():
for i in range(2, 12):
invoice_nos.add(u.zfill(i))
matching_invoices = Invoice.objects.filter(
Q(invoice_no__in=invoice_nos)
Q(invoice_no__iexact=u)
| Q(invoice_no__iexact=u.zfill(5))
| Q(full_invoice_no__iexact=u)
).values_list('order_id', flat=True)

View File

@@ -80,7 +80,7 @@ class PermissionMiddleware:
"user.settings.2fa.disable",
"user.settings.2fa.regenemergency",
"user.settings.2fa.confirm.totp",
"user.settings.2fa.confirm.webauthn",
"user.settings.2fa.confirm.u2f",
"user.settings.2fa.delete",
"auth.logout",
"user.reauth"

View File

@@ -118,7 +118,7 @@
{% include "pretixcontrol/event/mail_settings_fragment.html" with pid="ticket_reminder" title=title_download_tickets_reminder items="mail_days_download_reminder,mail_subject_download_reminder,mail_text_download_reminder,mail_send_download_reminder_attendee,mail_subject_download_reminder_attendee,mail_text_download_reminder_attendee,mail_sales_channel_download_reminder" exclude="mail_days_download_reminder,mail_send_download_reminder_attendee,mail_sales_channel_download_reminder" %}
{% blocktrans asvar title_require_approval %}Order approval process{% endblocktrans %}
{% include "pretixcontrol/event/mail_settings_fragment.html" with pid="ticket_reminder" title=title_require_approval items="mail_subject_order_placed_require_approval,mail_text_order_placed_require_approval,mail_subject_order_approved,mail_text_order_approved,mail_send_order_approved_attendee,mail_subject_order_approved_attendee,mail_text_order_approved_attendee,mail_subject_order_approved_free,mail_text_order_approved_free,mail_send_order_approved_free_attendee,mail_subject_order_approved_free_attendee,mail_text_order_approved_free_attendee,mail_subject_order_denied,mail_text_order_denied" exclude="mail_send_order_approved_attendee,mail_send_order_approved_free_attendee"%}
{% include "pretixcontrol/event/mail_settings_fragment.html" with pid="ticket_reminder" title=title_require_approval items="mail_subject_order_placed_require_approval,mail_text_order_placed_require_approval,mail_subject_order_approved,mail_text_order_approved,mail_subject_order_approved_free,mail_text_order_approved_free,mail_subject_order_denied,mail_text_order_denied" %}
</div>
<h4>{% trans "Attachments" %}</h4>
{% bootstrap_field form.mail_attachment_new_order layout="control" %}

View File

@@ -364,7 +364,7 @@
</div>
<div class="panel-body">
{% for line in items.positions %}
<div class="row-fluid product-row {% if line.canceled %}pos-canceled{% endif %} {% if line.item.require_approval and order.require_approval and order.status == 'n' %}bg-warning{% endif %}">
<div class="row-fluid product-row {% if line.canceled %}pos-canceled{% endif %}">
<div class="col-md-9 col-xs-6">
{% if line.addon_to %}
<span class="addon-signifier">+</span>

View File

@@ -21,8 +21,8 @@
<script type="text/json" data-replace-with-qr>{{ qrdata|safe }}</script><br>
{% trans "If your app/device does not support scanning a QR code, you can also enter the following information:" %}
<br>
<strong>{% trans "System URL:" %}</strong> <code>{{ settings.SITE_URL }}</code><br>
<strong>{% trans "Token:" %}</strong> <code>{{ device.initialization_token }}</code>
<strong>{% trans "System URL:" %}</strong> {{ settings.SITE_URL }}<br>
<strong>{% trans "Token:" %}</strong> {{ device.initialization_token }}
</li>
</ol>
</div>

View File

@@ -1526,7 +1526,7 @@ class EventQRCode(EventPermissionRequiredMixin, View):
if filetype == 'svg':
factory = qrcode.image.svg.SvgPathImage
img = qr.make_image(image_factory=factory)
img = qrcode.make('Some data here', image_factory=factory)
r = HttpResponse(img.to_string(), content_type='image/svg+xml')
r['Content-Disposition'] = f'inline; filename="qrcode-{request.event.slug}.{filetype}"'
return r

View File

@@ -31,7 +31,8 @@
# Unless required by applicable law or agreed to in writing, software distributed under the Apache License 2.0 is
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under the License.
import importlib_metadata as metadata
import pkg_resources
from django.contrib import messages
from django.http import JsonResponse
from django.shortcuts import get_object_or_404, redirect, reverse
@@ -131,14 +132,14 @@ class LicenseCheckView(StaffMemberRequiredMixin, FormView):
if not d:
d['source_notice'] = 'pretix (AGPLv3 with additional terms): https://github.com/pretix/pretix'
seen = set()
for entry_point in metadata.entry_points(group='pretix.plugin'):
if entry_point.dist.name not in seen:
for entry_point in pkg_resources.iter_entry_points(group='pretix.plugin', name=None):
if entry_point.dist.key not in seen:
try:
license, url = self._get_license_for_pkg(entry_point.dist.name)
license, url = self._get_license_for_pkg(entry_point.dist.key)
except FileNotFoundError:
license, url = '?', '?'
d['source_notice'] += f'\n{entry_point.dist.name} ({license}): {url}'
seen.add(entry_point.dist.name)
d['source_notice'] += f'\n{entry_point.dist.key} ({license}): {url}'
seen.add(entry_point.dist.key)
return d
@@ -167,15 +168,17 @@ class LicenseCheckView(StaffMemberRequiredMixin, FormView):
def _get_license_for_pkg(self, pkg):
license, url = None, None
try:
pkg = metadata.distribution(pkg)
pkg = pkg_resources.get_distribution(pkg)
except:
return None, None
try:
for k, v in pkg.metadata.items():
if k == "License":
license = v
if k == "Home-page":
url = v
for line in pkg.get_metadata_lines(pkg.PKG_INFO):
if ': ' in line:
(k, v) = line.split(': ', 1)
if k == "License":
license = v
if k == "Home-page":
url = v
except FileNotFoundError:
license = '?'
url = '?'
@@ -229,14 +232,14 @@ class LicenseCheckView(StaffMemberRequiredMixin, FormView):
'restrictions). Make sure to keep it up to date!')
))
for entry_point in metadata.entry_points(group='pretix.plugin'):
license, url = self._get_license_for_pkg(entry_point.dist.name)
for entry_point in pkg_resources.iter_entry_points(group='pretix.plugin', name=None):
license, url = self._get_license_for_pkg(entry_point.dist.key)
if not license or not any(l in license for l in ('Apache', 'MIT', 'BSD', 'pretix Enterprise', 'GPL')):
res.append((
'muted', 'warning',
_('We found the plugin "{plugin}" with license "{license}" which this tool does not know about and '
'therefore cannot give any recommendations.').format(plugin=entry_point.dist.name, license=license)
'therefore cannot give any recommendations.').format(plugin=entry_point.dist.key, license=license)
))
continue
@@ -244,21 +247,21 @@ class LicenseCheckView(StaffMemberRequiredMixin, FormView):
res.append((
'danger', 'exclamation-circle',
_('You selected that you have no active pretix Enterprise licenses, but we found the following '
'Enterprise plugin: {plugin}').format(plugin=entry_point.dist.name)
'Enterprise plugin: {plugin}').format(plugin=entry_point.dist.key)
))
if not input.get('plugins_copyleft') and any(l in license for l in ('GPL',)):
res.append((
'danger', 'exclamation-circle',
_('You selected that you have no copyleft-licensed plugins installed, but we found the '
'plugin "{plugin}" with license "{license}".').format(plugin=entry_point.dist.name, license=license)
'plugin "{plugin}" with license "{license}".').format(plugin=entry_point.dist.key, license=license)
))
if not input.get('plugins_free') and any(l in license for l in ('Apache', 'MIT', 'BSD')):
res.append((
'danger', 'exclamation-circle',
_('You selected that you have no free plugins installed, but we found the '
'plugin "{plugin}" with license "{license}".').format(plugin=entry_point.dist.name, license=license)
'plugin "{plugin}" with license "{license}".').format(plugin=entry_point.dist.key, license=license)
))
return res

View File

@@ -19,15 +19,18 @@
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
# <https://www.gnu.org/licenses/>.
#
import pyuca
from babel.core import Locale
from django.core.cache import cache
from django.utils import translation
from django_countries import Countries, collator
from django_countries import Countries
from django_countries.fields import CountryField
from phonenumbers.data import _COUNTRY_CODE_TO_REGION_CODE
from pretix.base.i18n import get_babel_locale, get_language_without_region
_collator = pyuca.Collator()
class CachedCountries(Countries):
_cached_lists = {}
@@ -113,7 +116,7 @@ def get_phone_prefixes_sorted_and_localized():
if country_name:
val.append((prefix, "{} {}".format(country_name, prefix)))
val = sorted(val, key=lambda item: collator.sort_key(item[1]))
val = sorted(val, key=lambda item: _collator.sort_key(item[1]))
_cached_phone_prefixes[cache_key] = val
cache.set(cache_key, val, 3600 * 24 * 30)

View File

@@ -21,6 +21,7 @@
#
import logging
import sentry_sdk
from django.core.signals import request_finished
from django.dispatch import receiver
@@ -55,7 +56,6 @@ class RequestIdMiddleware:
local.request_id = request.request_id = request.headers[settings.REQUEST_ID_HEADER]
if settings.SENTRY_ENABLED:
import sentry_sdk
sentry_sdk.set_tag("request_id", request.request_id)
else:
local.request_id = request.request_id = None

View File

@@ -23,10 +23,6 @@ import hashlib
import time
from django.conf import settings
from django.contrib.gis.geoip2 import GeoIP2
from django.core.cache import cache
from pretix.helpers.http import get_client_ip
class SessionInvalid(Exception):
@@ -41,19 +37,6 @@ def get_user_agent_hash(request):
return hashlib.sha256(request.headers['User-Agent'].encode()).hexdigest()
_geoip = None
def _get_country(request):
global _geoip
if not _geoip:
_geoip = GeoIP2()
res = _geoip.country(get_client_ip(request))
return res['country_code']
def assert_session_valid(request):
if not settings.PRETIX_LONG_SESSIONS or not request.session.get('pretix_auth_long_session', False):
last_used = request.session.get('pretix_auth_last_used', time.time())
@@ -71,16 +54,5 @@ def assert_session_valid(request):
else:
request.session['pinned_user_agent'] = get_user_agent_hash(request)
if settings.HAS_GEOIP:
client_ip = get_client_ip(request)
hashed_client_ip = hashlib.sha256(client_ip.encode()).hexdigest()
country = cache.get_or_set(f'geoip_country_{hashed_client_ip}', lambda: _get_country(request), timeout=300)
if 'pinned_country' in request.session:
if request.session.get('pinned_country') != country:
raise SessionInvalid()
else:
request.session['pinned_country'] = country
request.session['pretix_auth_last_used'] = int(time.time())
return True

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2021-09-15 11:22+0000\n"
"Last-Translator: Mohamed Tawfiq <mtawfiq@wafyapp.com>\n"
"Language-Team: Arabic <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -498,52 +498,52 @@ msgstr "الدقائق"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "QR الدخول"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "لا يمكن تحميل ملف PDF الخلفية للأسباب التالية:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "مجموعة من العناصر"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "عنصر نص"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "منطقة باركود"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "منطقة صورة"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "مدعوم من pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "عنصر"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "تصميم التذكرة"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "فشلت عملية الحفظ."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "حصل خطأ أثناء رفع ملف PDF الخاص بك، يرجى المحاولة مرة أخرى."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "هل تريد أن تغادر المحرر دون حفظ التعديلات؟"
@@ -614,12 +614,12 @@ msgstr "غير ذلك"
msgid "Count"
msgstr "احسب"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "نعم"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "لا"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2020-12-19 07:00+0000\n"
"Last-Translator: albert <albert.serra.monner@gmail.com>\n"
"Language-Team: Catalan <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -477,52 +477,52 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Disseny del tiquet"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
@@ -593,12 +593,12 @@ msgstr ""
msgid "Count"
msgstr "Quantitat"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2023-03-19 06:00+0000\n"
"Last-Translator: Michael <michael.happl@gmx.at>\n"
"Language-Team: Czech <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -489,52 +489,52 @@ msgstr "minuty"
msgid "Duplicate"
msgstr "Duplikát"
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Check-in QR kód"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Pozadí PDF nemohl být načten:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Skupina objektů"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Textový objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Oblast s QR kódem"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Oblast obrazu"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Poháněno společností pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Design vstupenky"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Uložení se nepodařilo."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Při nahrávání souboru PDF došlo k problému, zkuste to prosím znovu."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Opravdu chcete opustit editor bez uložení změn?"
@@ -608,12 +608,12 @@ msgstr "Další"
msgid "Count"
msgstr "Počet"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ano"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Ne"

File diff suppressed because it is too large Load Diff

View File

@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2022-12-01 17:00+0000\n"
"Last-Translator: Mie Frydensbjerg <mif@aarhus.dk>\n"
"Language-Team: Danish <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -509,54 +509,54 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Check-in QR"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Baggrunds-pdf'en kunne ikke hentes af følgende grund:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Gruppe af objekter"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Tekstobjekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "QR-kode-område"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
#, fuzzy
#| msgid "Barcode area"
msgid "Image area"
msgstr "QR-kode-område"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Drevet af pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Billetdesign"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Gem fejlede."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Fejl under upload af pdf. Prøv venligt igen."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
"Er du sikker på at du vil forlade editoren uden at gemme dine ændringer?"
@@ -630,12 +630,12 @@ msgstr "Andre"
msgid "Count"
msgstr "Antal"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ja"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nej"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2023-02-09 13:56+0000\n"
"Last-Translator: Raphael Michel <michel@rami.io>\n"
"Language-Team: German <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -492,53 +492,53 @@ msgstr "Minuten"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Check-in-QR-Code"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Die Hintergrund-PDF-Datei konnte nicht geladen werden:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Gruppe von Objekten"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Text-Objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "QR-Code-Bereich"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Bildbereich"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Event-Ticketshop von pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Ticket-Design"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Speichern fehlgeschlagen."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
"Es gab ein Problem beim Hochladen der PDF-Datei, bitte erneut versuchen."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
"Möchten Sie den Editor wirklich schließen ohne Ihre Änderungen zu speichern?"
@@ -614,12 +614,12 @@ msgstr "Sonstige"
msgid "Count"
msgstr "Anzahl"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ja"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nein"

View File

@@ -327,7 +327,6 @@ URIs
Ursprüngl
USt
Überweisungs
Validierung
Venmo
Veranstaltereinstellungen
Veranstalterkonten

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2023-02-09 13:56+0000\n"
"Last-Translator: Raphael Michel <michel@rami.io>\n"
"Language-Team: German (informal) <https://translate.pretix.eu/projects/"
@@ -491,53 +491,53 @@ msgstr "Minuten"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Check-in-QR-Code"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Die Hintergrund-PDF-Datei konnte nicht geladen werden:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Gruppe von Objekten"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Text-Objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "QR-Code-Bereich"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Bildbereich"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Event-Ticketshop von pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Ticket-Design"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Speichern fehlgeschlagen."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
"Es gab ein Problem beim Hochladen der PDF-Datei, bitte erneut versuchen."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
"Möchtest du den Editor wirklich schließen ohne Ihre Änderungen zu speichern?"
@@ -613,12 +613,12 @@ msgstr "Sonstige"
msgid "Count"
msgstr "Anzahl"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ja"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nein"

View File

@@ -327,7 +327,6 @@ URIs
Ursprüngl
USt
Überweisungs
Validierung
Venmo
Veranstaltereinstellungen
Veranstalterkonten

File diff suppressed because it is too large Load Diff

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -476,52 +476,52 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
@@ -592,12 +592,12 @@ msgstr ""
msgid "Count"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2019-10-03 19:00+0000\n"
"Last-Translator: Chris Spy <chrispiropoulou@hotmail.com>\n"
"Language-Team: Greek <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -526,55 +526,55 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Έλεγχος QR"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
"Το αρχείο φόντου PDF δεν ήταν δυνατό να φορτωθεί για τον ακόλουθο λόγο:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Ομάδα αντικειμένων"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Αντικείμενο κειμένου"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Περιοχή Barcode"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
#, fuzzy
#| msgid "Barcode area"
msgid "Image area"
msgstr "Περιοχή Barcode"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Υποστηρίζεται από το Pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Αντικείμενο"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Σχεδιασμός εισιτηρίων"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Η αποθήκευση απέτυχε."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Σφάλμα κατά τη μεταφόρτωση του αρχείου PDF, δοκιμάστε ξανά."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
"Θέλετε πραγματικά να αφήσετε τον επεξεργαστή χωρίς να αποθηκεύσετε τις "
@@ -652,12 +652,12 @@ msgstr "Άλλοι"
msgid "Count"
msgstr "Λογαριασμός"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ναι"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Όχι"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2021-11-25 21:00+0000\n"
"Last-Translator: Ismael Menéndez Fernández <ismael.menendez@balidea.com>\n"
"Language-Team: Spanish <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -495,55 +495,55 @@ msgstr "minutos"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "QR de Chequeo"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
"El archivo PDF de fondo no ha podido ser cargado debido al siguiente motivo:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Grupo de objetos"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Objeto de texto"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Área para código de barras"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Área de imagen"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Proveído por pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objeto"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Diseño del ticket"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "El guardado falló."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
"Ha habido un error mientras se cargaba el archivo PDF, por favor, intente de "
"nuevo."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "¿Realmente desea salir del editor sin haber guardado sus cambios?"
@@ -618,12 +618,12 @@ msgstr "Otros"
msgid "Count"
msgstr "Cantidad"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Sí"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "No"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2021-11-10 05:00+0000\n"
"Last-Translator: Jaakko Rinta-Filppula <jaakko@r-f.fi>\n"
"Language-Team: Finnish <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -499,54 +499,54 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Tekstiobjekti"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Viivakoodialue"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
#, fuzzy
#| msgid "Barcode area"
msgid "Image area"
msgstr "Viivakoodialue"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Tallennus epäonnistui."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
@@ -617,12 +617,12 @@ msgstr "Muut"
msgid "Count"
msgstr "Määrä"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Kyllä"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Ei"

File diff suppressed because it is too large Load Diff

View File

@@ -6,9 +6,9 @@ msgid ""
msgstr ""
"Project-Id-Version: French\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"PO-Revision-Date: 2023-04-06 22:00+0000\n"
"Last-Translator: Loïc Alejandro <loic.alejandro@e.email>\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2023-01-17 01:00+0000\n"
"Last-Translator: Maurice Kaag <maurice@kaag.me>\n"
"Language-Team: French <https://translate.pretix.eu/projects/pretix/pretix-js/"
"fr/>\n"
"Language: fr\n"
@@ -16,7 +16,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 4.16.4\n"
"X-Generator: Weblate 4.15\n"
#: pretix/plugins/banktransfer/static/pretixplugins/banktransfer/ui.js:56
#: pretix/plugins/banktransfer/static/pretixplugins/banktransfer/ui.js:62
@@ -286,12 +286,14 @@ msgid "Ticket code revoked/changed"
msgstr "Code du billet révoqué/changé"
#: pretix/plugins/webcheckin/static/pretixplugins/webcheckin/main.js:61
#, fuzzy
msgid "Ticket blocked"
msgstr "Billet bloqué"
msgstr "Ticket non payé"
#: pretix/plugins/webcheckin/static/pretixplugins/webcheckin/main.js:62
#, fuzzy
msgid "Ticket not valid at this time"
msgstr "Billet non valable pour le moment"
msgstr "Ticket non payé"
#: pretix/plugins/webcheckin/static/pretixplugins/webcheckin/main.js:63
msgid "Order canceled"
@@ -497,56 +499,56 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Enregistrement QR code"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
"Le fichier PDF généré en arrière-plan n'a pas pu être chargé pour la raison "
"suivante :"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Groupe d'objets"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Objet texte"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Zone de code-barres"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
#, fuzzy
msgid "Image area"
msgstr "Zone de code-barres"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Propulsé par pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objet"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Conception des billets"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "L'enregistrement a échoué."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
"Erreur lors du téléchargement de votre fichier PDF, veuillez réessayer."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
"Voulez-vous vraiment quitter l'éditeur sans sauvegarder vos modifications ?"
@@ -621,12 +623,12 @@ msgstr "Autres"
msgid "Count"
msgstr "Compter"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Oui"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Non"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2022-02-22 22:00+0000\n"
"Last-Translator: Ismael Menéndez Fernández <ismael.menendez@balidea.com>\n"
"Language-Team: Galician <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -495,53 +495,53 @@ msgstr "minutos"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "QR de validación"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "O arquivo PDF de fondo non se puido cargar polo motivo seguinte:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Grupo de obxectos"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Obxecto de texto"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Área para código de barras"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Área de imaxe"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Desenvolto por Pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Obxecto"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Deseño do tícket"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "O gardado fallou."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
"Houbo un erro mentres se cargaba o arquivo PDF. Por favor, inténteo de novo."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Realmente desexa saír do editor sen gardar os cambios?"
@@ -616,12 +616,12 @@ msgstr "Outros"
msgid "Count"
msgstr "Cantidade"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Si"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Non"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2021-09-24 13:54+0000\n"
"Last-Translator: ofirtro <ofir.tro@gmail.com>\n"
"Language-Team: Hebrew <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -484,52 +484,52 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
@@ -600,12 +600,12 @@ msgstr ""
msgid "Count"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@@ -476,52 +476,52 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
@@ -592,12 +592,12 @@ msgstr ""
msgid "Count"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2020-01-24 08:00+0000\n"
"Last-Translator: Prokaj Miklós <mixolid0@gmail.com>\n"
"Language-Team: Hungarian <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -519,54 +519,54 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Check in QR"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "A PDF háttér fájl nem tölthető be a következők miatt:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "tárgy csoport"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Szöveg"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Vonalkód terület"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
#, fuzzy
#| msgid "Barcode area"
msgid "Image area"
msgstr "Vonalkód terület"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "pretix által működtetett"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "objektum"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Jegy design"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Mentés sikertelen."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Hiba a PDF fájl feltöltése közben, próbálja újra."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Biztosan ki akar lépni a szerkesztőből a változtatások mentése nélkül?"
@@ -640,12 +640,12 @@ msgstr "Egyéb"
msgid "Count"
msgstr "Számítás"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Igen"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nem"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2022-05-08 19:00+0000\n"
"Last-Translator: Emanuele Signoretta <signorettae@gmail.com>\n"
"Language-Team: Italian <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -497,52 +497,52 @@ msgstr "minuti"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Check-in con QR"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Il file PDF di sfondo non può essere caricato per le seguenti ragioni:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Gruppo di oggetti"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Oggetto testo"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Area codice a barra"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Area immagini"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Powered by Pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Oggetto"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Design biglietto"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Salvataggio fallito."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Errore durante il caricamento del tuo file PDF, prova di nuovo."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Vuoi davvero abbandonare l'editor senza salvare le modifiche?"
@@ -615,12 +615,12 @@ msgstr "Altri"
msgid "Count"
msgstr "Conteggio"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Si"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "No"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2022-03-15 00:00+0000\n"
"Last-Translator: Yuriko Matsunami <y.matsunami@enobyte.com>\n"
"Language-Team: Japanese <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -494,52 +494,52 @@ msgstr "分"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "チェックイン用QRコード"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "以下の理由によりPDFファイルの読み込みに失敗しました"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "オブジェクトグループ"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "テキストオブジェクト"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "バーコードエリア"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "画像エリア"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Pretixのイベントチケット売り場"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "オブジェクト"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "チケットのデザイン"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "保存できませんでした。"
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "PDFのアップロード中に問題が発生しました。再試行してください。"
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "変更内容を保存せずに編集を終了しますか?"
@@ -612,12 +612,12 @@ msgstr "その他"
msgid "Count"
msgstr "総数"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "はい"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "いいえ"

File diff suppressed because it is too large Load Diff

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -476,52 +476,52 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
@@ -592,12 +592,12 @@ msgstr ""
msgid "Count"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2022-04-06 03:00+0000\n"
"Last-Translator: Liga V <lerning_by_dreaming@gmx.de>\n"
"Language-Team: Latvian <https://translate.pretix.eu/projects/pretix/pretix-"
@@ -496,53 +496,53 @@ msgstr "minūtes"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Reģistrācijas QR"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Fona PDF fails nevarēja ielādēties sekojoša iemesla dēļ:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Objektu grupa"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Teksta objekts"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Svītru koda lauks"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Attēla lauks"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Pretix atbalstīts"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objekts"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Biļešu dizains"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Saglabāšana neizdevās."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
"Radusies kļūda augšupielādējot jūsu PDF failu, lūdzu, mēģiniet vēlreiz."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
"Vai jūs tiešām vēlaties iziet no rediģēšanas lauka bez veikto izmaiņu "
@@ -619,12 +619,12 @@ msgstr "Citi"
msgid "Count"
msgstr "Skaits"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Jā"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nē"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2022-06-20 02:00+0000\n"
"Last-Translator: fyksen <fredrik@fyksen.me>\n"
"Language-Team: Norwegian Bokmål <https://translate.pretix.eu/projects/pretix/"
@@ -491,52 +491,52 @@ msgstr "minutter"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "Sjekk-in QR"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "PDF bakgrunnsfilen kunne ikke lastes av følgende årsak:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Gruppe med objekter"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Tekst objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Strekkodeområde"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Bildeområde"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Drevet av pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Objekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Billett design"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Lagring feilet."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Feil ved opplasting av PDF fil, prøv på nytt."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Vil du avslutte editoren uten å lagre endringene?"
@@ -607,12 +607,12 @@ msgstr "Andre"
msgid "Count"
msgstr "Tell"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ja"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nei"

File diff suppressed because it is too large Load Diff

View File

@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2021-10-29 02:00+0000\n"
"Last-Translator: Maarten van den Berg <maartenberg1@gmail.com>\n"
"Language-Team: Dutch <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -493,52 +493,52 @@ msgstr "minuten"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "QR-code voor check-in"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Het PDF-achtergrondbestand kon niet geladen worden met als reden:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Groep van objecten"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Tekstobject"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Barcode gebied"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Afbeeldingsgebied"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Mogelijk gemaakt door pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Object"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Ticketontwerp"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Opslaan mislukt."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Probleem bij het uploaden van het PDF-bestand, probeer het opnieuw."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Wilt u de editor verlaten zonder uw wijzigingen op te slaan?"
@@ -612,12 +612,12 @@ msgstr "Andere"
msgid "Count"
msgstr "Aantal"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ja"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nee"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@@ -475,52 +475,52 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr ""
@@ -591,12 +591,12 @@ msgstr ""
msgid "Count"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2021-08-05 04:00+0000\n"
"Last-Translator: Maarten van den Berg <maartenberg1@gmail.com>\n"
"Language-Team: Dutch (informal) <https://translate.pretix.eu/projects/pretix/"
@@ -497,53 +497,53 @@ msgstr "minuten"
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "QR-code voor check-in"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr ""
"Het PDF-achtergrondbestand kon niet geladen worden om de volgende reden:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Groep van objecten"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Tekstobject"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Barcodegebied"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
msgid "Image area"
msgstr "Afbeeldingsgebied"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Mogelijk gemaakt door pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Object"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Kaartjesontwerp"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Opslaan mislukt."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Probleem bij het uploaden van het PDF-bestand, probeer het opnieuw."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Wil je de editor verlaten zonder je wijzigingen op te slaan?"
@@ -617,12 +617,12 @@ msgstr "Andere"
msgid "Count"
msgstr "Aantal"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Ja"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nee"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-26 09:13+0000\n"
"POT-Creation-Date: 2023-04-05 09:17+0000\n"
"PO-Revision-Date: 2019-09-24 19:00+0000\n"
"Last-Translator: Serge Bazanski <q3k@hackerspace.pl>\n"
"Language-Team: Polish <https://translate.pretix.eu/projects/pretix/pretix-js/"
@@ -524,54 +524,54 @@ msgstr ""
msgid "Duplicate"
msgstr ""
#: pretix/static/pretixcontrol/js/ui/editor.js:72
#: pretix/static/pretixcontrol/js/ui/editor.js:71
msgid "Check-in QR"
msgstr "QR zameldowania"
#: pretix/static/pretixcontrol/js/ui/editor.js:387
#: pretix/static/pretixcontrol/js/ui/editor.js:386
msgid "The PDF background file could not be loaded for the following reason:"
msgstr "Błąd ładowania pliku PDF tła:"
#: pretix/static/pretixcontrol/js/ui/editor.js:648
#: pretix/static/pretixcontrol/js/ui/editor.js:656
msgid "Group of objects"
msgstr "Grupa obiektów"
#: pretix/static/pretixcontrol/js/ui/editor.js:653
#: pretix/static/pretixcontrol/js/ui/editor.js:662
msgid "Text object"
msgstr "Obiekt tekstowy"
#: pretix/static/pretixcontrol/js/ui/editor.js:655
#: pretix/static/pretixcontrol/js/ui/editor.js:664
msgid "Barcode area"
msgstr "Miejsce na kod kreskowy"
#: pretix/static/pretixcontrol/js/ui/editor.js:657
#: pretix/static/pretixcontrol/js/ui/editor.js:666
#, fuzzy
#| msgid "Barcode area"
msgid "Image area"
msgstr "Miejsce na kod kreskowy"
#: pretix/static/pretixcontrol/js/ui/editor.js:659
#: pretix/static/pretixcontrol/js/ui/editor.js:668
msgid "Powered by pretix"
msgstr "Wygenerowane przez pretix"
#: pretix/static/pretixcontrol/js/ui/editor.js:661
#: pretix/static/pretixcontrol/js/ui/editor.js:670
msgid "Object"
msgstr "Obiekt"
#: pretix/static/pretixcontrol/js/ui/editor.js:665
#: pretix/static/pretixcontrol/js/ui/editor.js:674
msgid "Ticket design"
msgstr "Projekt biletu"
#: pretix/static/pretixcontrol/js/ui/editor.js:964
#: pretix/static/pretixcontrol/js/ui/editor.js:986
msgid "Saving failed."
msgstr "Błąd zapisu."
#: pretix/static/pretixcontrol/js/ui/editor.js:1033
#: pretix/static/pretixcontrol/js/ui/editor.js:1083
#: pretix/static/pretixcontrol/js/ui/editor.js:1055
#: pretix/static/pretixcontrol/js/ui/editor.js:1105
msgid "Error while uploading your PDF file, please try again."
msgstr "Błąd uploadu pliku PDF, prosimy spróbować ponownie."
#: pretix/static/pretixcontrol/js/ui/editor.js:1066
#: pretix/static/pretixcontrol/js/ui/editor.js:1088
msgid "Do you really want to leave the editor without saving your changes?"
msgstr "Czy na pewno opuścić edytor bez zapisania zmian?"
@@ -645,12 +645,12 @@ msgstr "Inne"
msgid "Count"
msgstr "Ilość"
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixcontrol/js/ui/question.js:136
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "Yes"
msgstr "Tak"
#: pretix/static/pretixcontrol/js/ui/question.js:138
#: pretix/static/pretixcontrol/js/ui/question.js:137
#: pretix/static/pretixpresale/js/ui/questions.js:270
msgid "No"
msgstr "Nie"

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More