bramdeleeuw / silverstripe-event-tickets
Event tickets for SilverStripe Event Calendar
Installs: 766
Dependents: 3
Suggesters: 0
Security: 0
Stars: 4
Watchers: 2
Forks: 4
Open Issues: 4
Type:silverstripe-vendormodule
Requires
- dev-master
- 2.2.3
- 2.2.1
- 2.2.0
- 2.1.9
- 2.1.8
- 2.1.7
- 2.1.6
- 2.1.5
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.0
- 1.x-dev
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.23
- 1.2.22
- 1.2.21
- 1.2.20
- 1.2.19
- 1.2.18
- 1.2.17
- 1.2.16
- 1.2.15
- 1.2.14
- 1.2.13
- 1.2.12
- 1.2.11
- 1.2.10
- 1.2.9
- 1.2.8
- 1.2.7
- 1.2.6
- 1.2.5
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.6
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.0
- dev-dependabot/npm_and_yarn/webpack-5.94.0
- dev-dependabot/npm_and_yarn/micromatch-4.0.8
- dev-dependabot/npm_and_yarn/ws-8.17.1
- dev-dependabot/npm_and_yarn/braces-3.0.3
- dev-cart
- dev-buyables-merge-capacity
- dev-capacity-on-ticket
- dev-add-to-dataobject
This package is auto-updated.
Last update: 2024-12-01 00:06:23 UTC
README
Add a ticket office to your silverstripe site. Payments handled trough the SilverStripe Omnipay module.
Installation
Install the module trough composer
composer require bramdeleeuw/silverstripe-event-tickets
Add the nessesary extensions to the DataObject you want to sell tickets on. This can be an Event, for example with an events module. Or you can add the tickets to a special tickets Page, when, for example, you are selling tickets for an festival where one ticket grants access to multiple events.
# the object that sells tickets XD\Events\Model\EventPage: extensions: - Broarm\EventTickets\Extensions\TicketExtension # the ticket controller XD\Events\Model\EventPageController: extensions: - Broarm\EventTickets\Extensions\TicketControllerExtension - Broarm\EventTickets\Checkout\Steps\RegisterStep - Broarm\EventTickets\Checkout\Steps\SummaryStep - Broarm\EventTickets\Checkout\Steps\SuccessStep
On the extended Object you need to expose a couple of methods that we use to add data to the ticket.
public function getEventTitle() { return $this->owner->Title; } public function getEventStartDate() { return $this->owner->dbObject('StartDate'); } public function getEventAddress() { $this->owner->getFullAddress(); }