Ticket PDF plugin
The RSEvents!Pro PDF plugin allows you to generate a PDF file with the details of an event subscription.
Requirements
Since this is based on the PHP dompdf class, this is subjected to the following requirements
- PHP 5.0+ (5.3 recommended)
- MBString extension
- DOM extension (bundled with PHP 5)
- Some fonts. PDFs internally support Helvetica, Times-Roman, Courier & Zapf-Dingbats, but if you wish to use other fonts you will need to install some fonts. dompdf supports the same fonts as the underlying R&OS PDF class: Type 1 (.pfb with the corresponding .afm) and TrueType (.ttf). At the minimum, you should probably have the Microsoft core fonts.
Limitations
- not particularly tolerant to poorly-formed HTML input (using Tidy first may help).
- large files or large tables can take a while to render.
- CSS float is not supported.
Once installed, the plugin can be enabled and configured from the default Plugin manager. You can control the font, orientation and paper size of the generated PDF document.
When this plugin is installed and enabled you will have a new configuration area available when adding an event ticket: Ticket layout (Event editing details area). This will allow you to define the PDF document that will be generated for that particular ticket and each ticket will have its own PDF file).
Some special chars are not supported by all PDF font types. For example if your submissions or PDF text will be in Chinese, you will need to use the special, Firefly font. For languages that use UTF-8 chars, you can use the DejaVu Sans font. Both font files are available for download within the My downloads > RSEvents!Pro > View all plugins and modules > RSEvents!Pro files > 3rd Party area.
To install additional fonts, simply upload them (using a FTP client) within the /components/com_rseventspro/helpers/pdf/dompdf/lib/fonts/ folder. Once the files have been added to the proper location, you will be able to select the desired font within the plugin configuration. Please note that this is only available for the fonts downloaded from our website, to install fonts obtained from any other source, please consult the dompdf documentation.
Options
- Font: select a font for your PDF file.
- Orientation: portrait or landscape.
- Paper size: choose paper size, like A4.
- Barcode: QR code, Code 39, Code 39 Extended, Code 93 or Code 128.
- Barcode type: URL or Code.
- Barcode prefix: add your desired barcode prefix.
Confirming submissions automatically after scanning the code (steps):
- Set "Barcode" to "QR code" (this is only available for the QR Code generation).
- Set "Barcode type" to "URL".
- Add the {barcode} placeholder within your Ticket Layout (more details below).
When the QR code is eventually scanned, this will generate a URL which will point to an RSEvents!Pro task that will confirm the according ticket in question.
The generated PDF can only be attached to the Activation email. This is triggered when a transaction has been confirmed. More details on the Activation email can be found here.
The following placeholders can be used in the Ticket layout area:
Placeholder name | Description |
---|---|
{barcode} | this will generate a unique code, according to the following standards: Code 39, Code 39 extended, Code 93, Code 128, and QR code. A copy of the generated barcode can be seen by an administrator in the RSEvents!Pro > Subscriptions > area. |
{barcodetext} | this will provide the textual representation of the barcode. |
{EventName} | this placeholder will return the name of the event |
{EventLink} | this placeholder will return the event link |
{EventDescription} | the event description |
{EventStartDate} | this will output the event Start date and time |
{EventStartDateOnly} | this will return only the event start date, without the time |
{EventStartTime} | the event start time, without the date |
{EventEndDate} | the event end date and time |
{EventEndDateOnly} | only the event end date will be returned, without the time |
{EventEndTime} | the end time, without the end date |
{Owner} | the event owner |
{EventURL} | this will output the event URL |
{EventPhone} | the event phone number |
{EventEmail} | the event email address |
{LocationName} | the event location name |
{LocationLink} | the location link |
{LocationDescription} | this will output the location description |
{LocationURL} | the location URL |
{LocationAddress} | the address oh the location |
{EventCategories} | the event categories on which this is assigned |
{EventTags} | the assigned event tags |
{user} | The user name |
{TicketInfo} | Tickets information |
{TicketsTotal} | Total amount for paying |
{Discount} | this will output the discount applied to the tickets |
{date} | this will output the current date |
You can also show the event icon in the PDF using the following placeholders:
Placeholder name | Description |
---|---|
{EventIconSmallPdf} | The small event icon within the generated PDF file |
{EventIconBigPdf} | The big event icon within the generated PDF file |
{EventIconPdf} | The event icon within the generated PDF file |
The following placeholders are available for the Ticket PDF:
Placeholder name | Description |
---|---|
{Tax} | the tax applied |
{LateFee} | the late fee |
{EarlyDiscount} | the tickets early discount |
{Gateway} | the payment gateway used upon the transaction |
{IP} | the user's IP address |
{Coupon} | this will output the event coupon |
{useremail} | the user email used upon subscribing to an event |
{seat} | the corresponding selected seat number |
Tip: Images can also be included within the ticket layout area, but server side path needs to be specified. Example:
<img src="{sitepath}/images/picture.jpg" alt="picture" />
Downloading the PDF file
The ticket PDF can be downloaded in the backend. To do so, head to Components >> RSEvents!Pro >> Subscriptions >> click on a completed subscription >> click on Download ticket in the Subscriber details area.
The ticket PDF will only be generated for subscriptions that are marked as Complete.
6 persons found this article helpful.
You Should Also Read
RSEvents!Pro Community Builder Plugin |
RSEvents!Pro - RSMediaGallery! integration |
RSEvents!Pro Jomsocial Plugin |