Merge pull request #4761 from atif-shaikh/CRM-15743
[civicrm-core.git] / CRM / Event / Badge / NameTent.php
CommitLineData
6a488035
TO
1<?php
2/*
3 +--------------------------------------------------------------------+
06b69b18 4 | CiviCRM version 4.5 |
6a488035 5 +--------------------------------------------------------------------+
06b69b18 6 | Copyright CiviCRM LLC (c) 2004-2014 |
6a488035
TO
7 +--------------------------------------------------------------------+
8 | This file is a part of CiviCRM. |
9 | |
10 | CiviCRM is free software; you can copy, modify, and distribute it |
11 | under the terms of the GNU Affero General Public License |
12 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
13 | |
14 | CiviCRM is distributed in the hope that it will be useful, but |
15 | WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
17 | See the GNU Affero General Public License for more details. |
18 | |
19 | You should have received a copy of the GNU Affero General Public |
20 | License and the CiviCRM Licensing Exception along |
21 | with this program; if not, contact CiviCRM LLC |
22 | at info[AT]civicrm[DOT]org. If you have questions about the |
23 | GNU Affero General Public License or the licensing of CiviCRM, |
24 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
25 +--------------------------------------------------------------------+
26*/
27
28
29/*
30* Copyright (C) 2010 Tech To The People
31* Licensed to CiviCRM under the Academic Free License version 3.0.
32*
33*/
34
35/**
36 *
37 * @package CRM
38 *
39 */
40class CRM_Event_Badge_NameTent extends CRM_Event_Badge {
0cf587a7
EM
41 /**
42 *
43 */
6a488035
TO
44 function __construct() {
45 parent::__construct();
46 // A4
47 $pw = 297;
48 $ph = 210;
49 $this->lMargin = 10;
50 $this->tMargin = 0;
c90ac4dd 51 $w = $pw - 2 * $this->lMargin;
6a488035
TO
52 $h = $ph - 2 * $this->tMargin;
53 $this->format = array(
54 'name' => 'A4 horiz', 'paper-size' => 'A4', 'metric' => 'mm', 'lMargin' => 0,
55 'tMargin' => 0, 'NX' => 1, 'NY' => 1, 'SpaceX' => 0, 'SpaceY' => 0,
56 'width' => $w, 'height' => $h, 'font-size' => 36,
57 );
58 // $this->setDebug ();
59 }
60
61 function pdfExtraFormat() {
62 $this->pdf->setPageFormat('A4', 'L');
63 }
64
0cf587a7
EM
65 /**
66 * @param $participant
67 */
6a488035
TO
68 protected function writeOneSide(&$participant) {
69 $this->pdf->SetXY(0, $this->pdf->height / 2);
70 $this->printBackground(TRUE);
71 $txt = $participant['display_name'];
72 $this->pdf->SetXY(0, $this->pdf->height / 2 + 20);
73 $this->pdf->SetFontSize(54);
74 $this->pdf->Write(0, $txt, NULL, NULL, 'C');
75 $this->pdf->SetXY(0, $this->pdf->height / 2 + 50);
76 $this->pdf->SetFontSize(36);
77 $this->pdf->Write(0, $participant['current_employer'], NULL, NULL, 'C');
78 }
79
0cf587a7
EM
80 /**
81 * @param $participant
82 */
6a488035
TO
83 public function generateLabel($participant) {
84 $this->writeOneSide($participant);
85 $this->pdf->StartTransform();
86 $this->pdf->Rotate(180, $this->pdf->width / 2 + $this->pdf->marginLeft, $this->pdf->height / 2);
87 $this->writeOneSide($participant);
88 $this->pdf->StopTransform();
89 }
90}
91