This Bundle provides ticketing functionality for Symfony2 applications. Multilingual capable

Installs: 1 398

Dependents: 1

Stars: 24

Watchers: 3

Forks: 14

Open Issues: 4

Language: PHP


Latest version. See 0.9 for previous version.

Simple multilingual ticketing bundle to add to any project. Languages: English, French, Russian, German and Spanish.

Build Status SensioLabsInsight



See Ticket Bundle Demo App for an example installation. This can also be used for confirming bugs.


Add HackzillaTicketBundle in your composer.json:

    "require": {
        "hackzilla/ticket-bundle": "~1.0",
        "friendsofsymfony/user-bundle": "~2.0@dev",

Follow FOSUserBundle guide

Install Composer

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

Now tell composer to download the library by running the command:

$ composer update hackzilla/ticket-bundle

Composer will install the bundle into your project's vendor/hackzilla directory.

Step 2: Enable the bundle

Enable the bundle in the kernel:

// app/AppKernel.php

public function registerBundles()
    $bundles = array(
        // ...
        new FOS\UserBundle\FOSUserBundle(),
        new Knp\Bundle\PaginatorBundle\KnpPaginatorBundle(),
        new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
        new Hackzilla\Bundle\TicketBundle\HackzillaTicketBundle(),
        // ...
        // Your application bundles

Step 3: Import the routing

    resource: "@HackzillaTicketBundle/Resources/config/routing.yml"
    prefix:   /


    resource: "@HackzillaTicketBundle/Resources/config/routing/ticket.yml"
    prefix:   /ticket

Step 4: Roles

All users can create tickets, even anonymous users. You can assign ROLE_TICKET_ADMIN to any user you want to be able to administer the ticketing system.

Step 5: Create tables

app/console doctrine:schema:update --force


TicketBundle show fires events for creating, updating, and deleting of tickets.

  • hackzilla.ticket.create
  • hackzilla.ticket.update
  • hackzilla.ticket.delete

See for example of how to create listener: http://symfony.com/doc/current/cookbook/service_container/event_listener.html

Change Log


  • TicketType and TicketMessageType have been moved into Form/Type folder.


  • New template, and schema changes


  • Moved UserInterface into bundle
  • Moved Ticket Manager to its own namespace

Migrating to 1.0

  • remove new Hackzilla\Bundle\FOSUserBridgeBundle\HackzillaFOSUserBridgeBundle() from AppKernel.php
  • remove hackzilla/fosuser-bridge-bundle from composer.json

Pull Requests

I'm open to pull requests for additional languages, features and/or improvements.