Skip to content

Event tickets for SilverStripe and Event Calendar

License

Notifications You must be signed in to change notification settings

xddesigners/event-tickets

 
 

Repository files navigation

Event tickets for SilverStripe

Scrutinizer Code Quality Build Status Latest Stable Version

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();
}

Maintainers

Bram de Leeuw

About

Event tickets for SilverStripe and Event Calendar

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 87.9%
  • Scheme 8.5%
  • Vue 3.4%
  • JavaScript 0.2%