itk-dev / itk_pretix
A module using pretix API to generate events from field values
Installs: 8 602
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 29
Type:drupal-module
pkg:composer/itk-dev/itk_pretix
Requires
- php: ^8.3
 - itk-dev/pretix-api-client-php: ^1.1
 - nicoeg/dawa: ^1.0
 
Requires (Dev)
- dealerdirect/phpcodesniffer-composer-installer: ^0.7.1
 - drupal/coder: ^8.3
 - ergebnis/composer-normalize: ^2.45
 - mglaman/phpstan-drupal: ^1.3
 - palantirnet/drupal-rector: ^0.20.3
 - phpstan/extension-installer: ^1.4
 - phpstan/phpstan: ^1.12
 - phpstan/phpstan-deprecation-rules: ^1.2
 
- dev-develop
 - 1.3.0
 - 1.3.0-rc.5
 - 1.3.0-rc.4
 - 1.3.0-rc.3
 - 1.3.0-rc.2
 - 1.3.0-rc.1
 - 1.2.3
 - 1.2.2
 - 1.2.1
 - 1.2.0
 - 1.1.0
 - 1.0.3
 - 1.0.2
 - 1.0.1
 - 1.0.0
 - dev-main
 - dev-release/1.3.0
 - dev-feature/npm-update
 - dev-feature/registration_deadline
 - dev-feature/d-10-updated
 - dev-feature/remove-circular-reference
 - dev-hotfix/export-parameters-change
 - dev-dependabot/npm_and_yarn/minimist-and-mkdirp-1.2.8
 - dev-dependabot/npm_and_yarn/json5-1.0.2
 - dev-dependabot/npm_and_yarn/express-4.18.2
 - dev-dependabot/npm_and_yarn/qs-6.5.3
 - dev-dependabot/npm_and_yarn/decode-uri-component-0.2.2
 - dev-dependabot/npm_and_yarn/loader-utils-and-symfony/webpack-encore-2.0.4
 - dev-dependabot/npm_and_yarn/terser-4.8.1
 - dev-dependabot/npm_and_yarn/jquery-validation-1.19.5
 - dev-dependabot/npm_and_yarn/eventsource-1.1.1
 - dev-dependabot/npm_and_yarn/async-2.6.4
 - dev-dependabot/npm_and_yarn/url-parse-1.5.10
 - dev-dependabot/npm_and_yarn/follow-redirects-1.14.8
 - dev-dependabot/npm_and_yarn/ajv-6.12.6
 - dev-dependabot/npm_and_yarn/node-sass-7.0.0
 - dev-dependabot/npm_and_yarn/color-string-1.6.0
 - dev-dependabot/npm_and_yarn/path-parse-1.0.7
 - dev-dependabot/npm_and_yarn/ws-6.2.2
 - dev-dependabot/npm_and_yarn/dns-packet-1.3.4
 - dev-dependabot/npm_and_yarn/browserslist-4.16.6
 - dev-dependabot/npm_and_yarn/hosted-git-info-2.8.9
 - dev-dependabot/npm_and_yarn/ssri-6.0.2
 - dev-dependabot/npm_and_yarn/y18n-4.0.1
 - dev-dependabot/npm_and_yarn/elliptic-6.5.4
 - dev-dependabot/npm_and_yarn/dot-prop-4.2.1
 - dev-dependabot/npm_and_yarn/ini-1.3.8
 - dev-dependabot/npm_and_yarn/http-proxy-1.18.1
 - dev-dependabot/npm_and_yarn/websocket-extensions-0.1.4
 - dev-dependabot/npm_and_yarn/jquery-3.5.0
 - dev-feature/HRIN-485-single-date-widget
 
This package is auto-updated.
Last update: 2025-10-04 12:55:38 UTC
README
This Drupal 8 module creates a new field type that enables a link to https://pretix.eu/ to be made.
Through the Pretix API it is possible to add, change or remove Pretix event date entries from the Drupal interface.
- Add a new field of type 
pretix date field typeto an entity. - Add a new field of type 
pretix event settingsto the entity. - Add a pretix connection through the settings (local.settings.php).
 - Watch the magic happen.
 
Configuration
Go to /admin/config/itk_pretix/pretixconfig and enter your pretix details.
A hidden configuration option, pretix_event_slug_template, controls how pretix
event slugs (short forms) are generated. The default value is !nid and !nid
will be replaced with the actual node id when creating a pretix event.
To change the value of pretix_event_slug_template, set it in your site's
settings, e.g. (in settings.local.php):
$config['itk_pretix.pretixconfig']['pretix_event_slug_template'] = 'dev-local';
If the value of pretix_event_slug_template is not empty, but !nid does not
occur in the value, -!nid will be appended and the final template will be
dev-local-!nid.
Drupal base URL
For development, you may want to use a custom base URL for your Drupal site (overriding the base URL Drupal uses). To do
this, set $settings['itk_pretix']['drupal_base_url'] in your local settings, e.g.
# settings.local.php $settings['itk_pretix']['drupal_base_url'] = 'http://example.com:8888';
Exporters
This module exposes a number of event Data exporters that are run via the pretix REST api (cf. https://docs.pretix.eu/en/latest/api/resources/exporters.html)
All exporters implement Drupal\itk_pretix\Exporter\ExporterInterface (by
extending Drupal\itk_pretix\Exporter\AbstractExporter) and are managed by
Drupal\itk_pretix\Exporter\Manager which takes care of displaying exporter
parameters forms and running exporters.
The available exporters for a node can be run from
/itk_pretix/pretix/event/exporters/{node} where {node} is the node id.
Building assets
We use Encore to build assets.
First, install tools and requirements:
docker compose run --rm node npm install
Build during development:
docker compose run --rm node npm run watch
Build for production:
docker compose run --rm node npm run build
Coding standards
The code must follw the Drupal Coding Standards
Apply and check the coding standards by running
docker compose run --rm phpfpm composer install docker compose run --rm phpfpm composer normalize docker compose run --rm phpfpm composer coding-standards-apply docker compose run --rm phpfpm composer coding-standards-check
Assets
Apply and check the coding standards in assets by running
docker compose run --rm node npm install docker compose run --rm node npm run coding-standards-apply docker compose run --rm node npm run coding-standards-check
Markdown
docker compose run --rm markdownlint markdownlint '**/*.md' --fix docker compose run --rm markdownlint markdownlint '**/*.md'