rimi-itk / dpl_pretix

Ding module for integration with the Pretix ticketing platform
GNU General Public License v2.0
0 stars 0 forks source link

DPL pretix

[DPL CMS] module for integration with the pretix ticketing platform.

Builds on ideas and experiences from https://github.com/itk-dev/itk_pretix.

Installation

https://www.drupal.org/project/dpl_pretix

Enable the module and go to /admin/config/dpl_pretix to configure the module.

Usage

The module will add a "pretix" section on all events.

pretix settings: /admin/config/dpl_pretix

Log messages: /admin/reports/dblog?type[]=dpl_pretix

pretix

We need a template event in pretix, and this template event will be cloned to create new events in pretix.

The template event must

  1. be a multiple dates event
  2. have a single subevent (date)

Edit event

Delete event

pretix API client

As of now, we cannot composer require dependencies when building custom modules for [DPL CMS], and therefore we use a slightly customized version of itk-dev/pretix-api-client-php to talk to pretix.

Two of the dependencies of itk-dev/pretix-api-client-php (doctrine/collections and guzzlehttp/guzzle) are (indirectly) required by DPL CMS.

The dependency on symfony/options-resolver can we, under duress, choose to live without, and a small patch removes use of the OptionsResolver component.

See the build:pretix-api-client task in Taskfile.yml for details on how the modified version of itk-dev/pretix-api-client-php is actually built.

Coding standards

task dev:coding-standards:check
docker run --rm --volume "$PWD:/mnt" koalaman/shellcheck:stable scripts/create-release scripts/code-analysis

Code analysis

task dev:code-analysis
docker compose build && docker compose run --rm php scripts/create-release dev-test

Bugs and caveats

To dos