Subversion Repositories ALCASAR

Rev

Rev 946 | Rev 1129 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 946 Rev 1125
Line 1... Line 1...
1
<?php
1
<?php
-
 
2
// for developpement purpose
-
 
3
// CONST ROOT = "C:/Serveurs/Alcasar-mageia/";
-
 
4
CONST ROOT = "/";
-
 
5
require_once(ROOT.'/var/www/html/acc/manager/lib/alcasar/ticketspdf.class.php');
2
// ticket d'impression (thank's to Geoffroy MUSITELLI)
6
// ticket d'impression (thank's to Geoffroy MUSITELLI)
3
//--recupération des variables provenant du formulaire 
7
//--recupération des variables provenant du formulaire 
4
$langue_imp=utf8_decode($_POST["langue_imp"]);
8
$langue_imp=utf8_decode($_POST["langue_imp"]);
5
$log_imp=utf8_decode($_POST["log_imp"]);
9
$log_imp=utf8_decode($_POST["log_imp"]);
6
$passwd_imp=utf8_decode($_POST["passwd_imp"]);
10
$passwd_imp=utf8_decode($_POST["passwd_imp"]);
Line 13... Line 17...
13
//Langue du Ticket d'impression en fonction de la liste déroulante
17
//Langue du Ticket d'impression en fonction de la liste déroulante
14
switch ($langue_imp){
18
switch ($langue_imp){
15
	case 'fr':
19
	case 'fr':
16
		$l_title_imp = "TICKET D'ACCÈS INTERNET";
20
		$l_title_imp = "TICKET D'ACCÈS INTERNET";
17
		$l_footer_imp = "Généré par ALCASAR";
21
		$l_footer_imp = "Généré par ALCASAR";
18
	       	$l_explain1_imp = "Entrer 'alcasar' dans votre navigateur pour gérer votre compte (mot de passe, certificat, etc.).";
22
			//$l_explain1_imp = "Entrer 'alcasar' dans votre navigateur pour gérer votre compte (mot de passe, certificat, etc.).";
19
	       	$l_explain2_imp = "Entrer 'logout' dans votre navigateur pour vous déconnecter.";
23
			//$l_explain2_imp = "Entrer 'logout' dans votre navigateur pour vous déconnecter.";
-
 
24
			$l_explain = "Entrer 'alcasar' dans votre navigateur pour gérer votre compte
-
 
25
			(mot de passe, certificat, etc.).
-
 
26
			Entrer 'logout' dans votre navigateur pour vous déconnecter.";
20
		$l_login_imp = "Utilisateur :";
27
		$l_login_imp = "Utilisateur :";
21
		$l_password_imp = "Mot de passe :";
28
		$l_password_imp = "Mot de passe :";
22
		$l_max_all_session_imp="Durée totale autorisée :";
29
		$l_max_all_session_imp="Durée totale autorisée :";
23
		$l_session_timeout_imp="Durée d'une session :";
30
		$l_session_timeout_imp="Durée d'une session :";
24
		$l_max_daily_session_imp="Durée journalière :";
31
		$l_max_daily_session_imp="Durée journalière :";
Line 28... Line 35...
28
		$l_without="Aucune";
35
		$l_without="Aucune";
29
	break;
36
	break;
30
	case 'de':
37
	case 'de':
31
		$l_title_imp = "INTERNETZUGANG TICKET";
38
		$l_title_imp = "INTERNETZUGANG TICKET";
32
		$l_footer_imp = "Präsentiert von ALCASAR";
39
		$l_footer_imp = "Präsentiert von ALCASAR";
33
	       	$l_explain1_imp = "Geben Sie 'Alcasar' in Ihrem Browser, um Ihr Konto zu verwalten (kennwort, zertifikat, etc.).";
40
			//$l_explain1_imp = "Geben Sie 'Alcasar' in Ihrem Browser, um Ihr Konto zu verwalten (kennwort, zertifikat, etc.).";
34
	       	$l_explain2_imp = "Geben Sie 'logout' in Ihrem Browser zu trennen.";
41
			//$l_explain2_imp = "Geben Sie 'logout' in Ihrem Browser zu trennen.";
-
 
42
			$l_explain = "Geben Sie 'Alcasar' in Ihrem Browser, um Ihr Konto zu verwalten (kennwort, zertifikat, etc.).
-
 
43
			Geben Sie 'logout' in Ihrem Browser zu trennen.
-
 
44
			";
35
		$l_login_imp = "Login :";
45
		$l_login_imp = "Login :";
36
		$l_password_imp = "Passwort :";
46
		$l_password_imp = "Passwort :";
37
		$l_max_all_session_imp="Maximale erlaubt Dauer :";
47
		$l_max_all_session_imp="Maximale erlaubt Dauer :";
38
		$l_session_timeout_imp="Dauer der Sitzung :";
48
		$l_session_timeout_imp="Dauer der Sitzung :";
39
		$l_max_daily_session_imp="Stunden t&auml;glich :";
49
		$l_max_daily_session_imp="Stunden t&auml;glich :";
Line 43... Line 53...
43
		$l_without="Ohne";
53
		$l_without="Ohne";
44
	break;
54
	break;
45
	case 'nl':
55
	case 'nl':
46
		$l_title_imp = "ONTVANGST INTERNET";
56
		$l_title_imp = "ONTVANGST INTERNET";
47
		$l_footer_imp = "Powered by ALCASAR";
57
		$l_footer_imp = "Powered by ALCASAR";
48
	       	$l_explain1_imp = "Voer 'Alcasar' in uw browser om uw account te beheren (wachtwoord, certificaat, etc.).";
58
			//$l_explain1_imp = "Voer 'Alcasar' in uw browser om uw account te beheren (wachtwoord, certificaat, etc.).";
49
	       	$l_explain2_imp = "Voer 'logout' in uw browser de verbinding te verbreken.";
59
			//$l_explain2_imp = "Voer 'logout' in uw browser de verbinding te verbreken.";
-
 
60
			$l_explain = "Voer 'Alcasar' in uw browser om uw account te beheren (wachtwoord, certificaat, etc.).
-
 
61
			Voer 'logout' in uw browser de verbinding te verbreken.";
50
		$l_login_imp = "Gebruikers :";
62
		$l_login_imp = "Gebruikers :";
51
		$l_password_imp = "Wachtwoord :";
63
		$l_password_imp = "Wachtwoord :";
52
		$l_max_all_session_imp="Totaal toegestane tijd :";
64
		$l_max_all_session_imp="Totaal toegestane tijd :";
53
		$l_session_timeout_imp="Sessieduur :";
65
		$l_session_timeout_imp="Sessieduur :";
54
		$l_max_daily_session_imp="Dagelijkse uren :";
66
		$l_max_daily_session_imp="Dagelijkse uren :";
Line 58... Line 70...
58
		$l_without="Ohne";
70
		$l_without="Ohne";
59
	break;
71
	break;
60
	case 'es':
72
	case 'es':
61
		$l_title_imp = "BONO INTERNET";
73
		$l_title_imp = "BONO INTERNET";
62
		$l_footer_imp = "Desarrollado por ALCASAR";
74
		$l_footer_imp = "Desarrollado por ALCASAR";
63
	       	$l_explain1_imp = "Escribe 'Alcasar' de su navegador para administrar su cuenta (contraseña, certificado, etc.).";
75
			//$l_explain1_imp = "Escribe 'Alcasar' de su navegador para administrar su cuenta (contraseña, certificado, etc.).";
64
	       	$l_explain2_imp = "Escribe 'logout' de su navegador para desconectar.";
76
			//$l_explain2_imp = "Escribe 'logout' de su navegador para desconectar.";
-
 
77
			$l_explain = "Escribe 'Alcasar' de su navegador para administrar su cuenta (contraseña, certificado, etc.).
-
 
78
			Escribe 'logout' de su navegador para desconectar.";
65
		$l_login_imp = "Usuario :";
79
		$l_login_imp = "Usuario :";
66
		$l_password_imp = "Contraseña :";
80
		$l_password_imp = "Contraseña :";
67
		$l_max_all_session_imp="Tiempo total permitido :";
81
		$l_max_all_session_imp="Tiempo total permitido :";
68
		$l_session_timeout_imp="Duraciôn de Sesiôn :";
82
		$l_session_timeout_imp="Duraciôn de Sesiôn :";
69
		$l_max_daily_session_imp="Horas diarias :";
83
		$l_max_daily_session_imp="Horas diarias :";
Line 73... Line 87...
73
		$l_without="Sin";
87
		$l_without="Sin";
74
	break;
88
	break;
75
	case 'it':
89
	case 'it':
76
		$l_title_imp = "RICEVIMENTO INTERNET";
90
		$l_title_imp = "RICEVIMENTO INTERNET";
77
		$l_footer_imp = "Powered by ALCASAR";
91
		$l_footer_imp = "Powered by ALCASAR";
78
	       	$l_explain1_imp = "Inserisci 'alcasar' nel tuo browser per gestire il tuo account (password, certificato, ecc).";
92
			//$l_explain1_imp = "Inserisci 'alcasar' nel tuo browser per gestire il tuo account (password, certificato, ecc).";
79
	       	$l_explain2_imp = "Inserisci 'logout' nel tuo browser per disconnettersi.";
93
			//$l_explain2_imp = "Inserisci 'logout' nel tuo browser per disconnettersi.";
-
 
94
			$l_explain = "Inserisci 'alcasar' nel tuo browser per gestire il tuo account (password, certificato, ecc).
-
 
95
			Inserisci 'logout' nel tuo browser per disconnettersi.";
80
		$l_login_imp = "Utenti :";
96
		$l_login_imp = "Utenti :";
81
		$l_password_imp = "Password :";
97
		$l_password_imp = "Password :";
82
		$l_max_all_session_imp="Tempo totale consentito:";
98
		$l_max_all_session_imp="Tempo totale consentito:";
83
		$l_session_timeout_imp="Durata della sessione :";
99
		$l_session_timeout_imp="Durata della sessione :";
84
		$l_max_daily_session_imp="Ore giornaliere :";
100
		$l_max_daily_session_imp="Ore giornaliere :";
Line 88... Line 104...
88
		$l_without="Senza";
104
		$l_without="Senza";
89
	break;
105
	break;
90
	case 'pt':
106
	case 'pt':
91
		$l_title_imp = "BILHETE DE ACESSO À INTERNET";
107
		$l_title_imp = "BILHETE DE ACESSO À INTERNET";
92
		$l_footer_imp = "Desenvolvido por ALCASAR";
108
		$l_footer_imp = "Desenvolvido por ALCASAR";
93
	       	$l_explain1_imp = "Digite 'Alcasar' no seu navegador para gerenciar sua conta (senha, certidão, etc).";
109
			//$l_explain1_imp = "Digite 'Alcasar' no seu navegador para gerenciar sua conta (senha, certidão, etc).";
94
	       	$l_explain2_imp = "Digite 'logout' no seu navegador para desligar.";
110
			//$l_explain2_imp = "Digite 'logout' no seu navegador para desligar.";
-
 
111
			$l_explain = "Digite 'Alcasar' no seu navegador para gerenciar sua conta (senha, certidão, etc).
-
 
112
			Digite 'logout' no seu navegador para desligar.";
95
		$l_login_imp = "Usuário :";
113
		$l_login_imp = "Usuário :";
96
		$l_password_imp = "Senha :";
114
		$l_password_imp = "Senha :";
97
		$l_max_all_session_imp="Tempo máximo de toda conexão :";
115
		$l_max_all_session_imp="Tempo máximo de toda conexão :";
98
		$l_session_timeout_imp="Fim da conexão :";
116
		$l_session_timeout_imp="Fim da conexão :";
99
		$l_max_daily_session_imp="Conexão máxima diária :";
117
		$l_max_daily_session_imp="Conexão máxima diária :";
Line 103... Line 121...
103
		$l_without="Sem";
121
		$l_without="Sem";
104
	break;
122
	break;
105
	default:
123
	default:
106
		$l_title_imp = "INTERNET ACCESS TICKET";
124
		$l_title_imp = "INTERNET ACCESS TICKET";
107
		$l_footer_imp = "Powered by ALCASAR";
125
		$l_footer_imp = "Powered by ALCASAR";
108
	       	$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, certificate, etc.).";
126
			//$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, certificate, etc.).";
109
	       	$l_explain2_imp = "Enter 'logout' in your browser to disconnect.";
127
			//$l_explain2_imp = "Enter 'logout' in your browser to disconnect.";
-
 
128
			$l_explain = "Enter 'alcasar' in your browser to manage your account (password, certificate, etc.).
-
 
129
			Enter 'logout' in your browser to disconnect.";
110
		$l_login_imp = "Login :";
130
		$l_login_imp = "Login :";
111
		$l_password_imp = "Password :";
131
		$l_password_imp = "Password :";
112
		$l_max_all_session_imp="Total time allowed :";
132
		$l_max_all_session_imp="Total time allowed :";
113
		$l_session_timeout_imp="Session timeout :";
133
		$l_session_timeout_imp="Session timeout :";
114
		$l_max_daily_session_imp="Max daily session :";
134
		$l_max_daily_session_imp="Max daily session :";
Line 116... Line 136...
116
		$l_expiration_imp="Expiration date :";
136
		$l_expiration_imp="Expiration date :";
117
		$l_unlimited="Unlimited";
137
		$l_unlimited="Unlimited";
118
		$l_without="Without";
138
		$l_without="Without";
119
	break;
139
	break;
120
	}
140
	}
-
 
141
	
-
 
142
	/*  Si les valeurs de durée sont égal à '-' remplissage avec la valeur 'Illimitée'*/
-
 
143
	if ($sto_imp=='-'){ $sto_imp=$l_unlimited;}
-
 
144
	if ($mas_imp=='-'){ $mas_imp=$l_unlimited;}
-
 
145
	if ($mds_imp=='-'){ $mds_imp=$l_unlimited;}
-
 
146
	if ($mms_imp=='-'){ $mms_imp=$l_unlimited;}
121
//création de la classe PDF pour faire l'entête et pieds de page
147
//création de la classe PDF pour faire l'entête et pieds de page
122
require('../lib/fpdf/fpdf.php');
-
 
123
class PDF extends FPDF
-
 
124
{
-
 
125
	//Entête
-
 
126
	function Header()
-
 
127
	{
-
 
128
		global $l_title_imp;
-
 
129
		//Logo coordonnées x , y, largeur de l'image 
-
 
130
		$this->Image('../../../images/logo-alcasar.png',30,15,30);
-
 
131
		$this->Image('../../../images/organisme.png',150,15,25);
-
 
132
		//Police Arial gras 15
-
 
133
		$this->SetFont('Arial','B',18);
-
 
134
		//couleur de l'écriture en rouge
148
// Ajout d'un ticket sur la fiche PDF
135
		$this->SetTextColor(250,1,10);
-
 
136
		//Titre largeur cellule x , hauteur y, texte, bordure 0 , Indique où déplace la prochaine position courante 0 droite, centré C
-
 
137
		$this->Cell(190,10,utf8_decode($l_title_imp),0,0,'C');
-
 
138
		//Saut de ligne
-
 
139
		$this->Ln(25);
-
 
140
	}
-
 
141
	//Pied de page
-
 
142
	function Footer()
-
 
143
	{
-
 
144
		global $l_footer_imp;
-
 
145
		//Positionnement à 1,5 cm du bas
-
 
146
		$this->SetY(-15);
-
 
147
		//Police Arial italique 8
-
 
148
		$this->SetFont('Arial','I',8);
-
 
149
		$this->Cell(200,20,utf8_decode($l_footer_imp),0,0,'C');
-
 
150
	}
-
 
151
	//fonction rectangle
-
 
152
	//Rectangle : x, y : coin supérieur gauche du rectangle.w, h : largeur et hauteur. r : rayon des coins arrondis.
-
 
153
	//style : comme celui de Rect() : F, D (défaut), FD ou DF. 
-
 
154
	function RoundedRect($x, $y, $w, $h, $r, $style = '')
-
 
155
	{
-
 
156
		$k = $this->k;
-
 
157
		$hp = $this->h;
-
 
158
		if($style=='F')
-
 
159
			$op='f';
-
 
160
		elseif($style=='FD' or $style=='DF')
-
 
161
			$op='B';
-
 
162
		else
-
 
163
			$op='S';
-
 
164
		$MyArc = 4/3 * (sqrt(2) - 1);
-
 
165
		$this->_out(sprintf('%.2F %.2F m',($x+$r)*$k,($hp-$y)*$k ));
-
 
166
		$xc = $x+$w-$r ;
-
 
167
		$yc = $y+$r;
-
 
168
		$this->_out(sprintf('%.2F %.2F l', $xc*$k,($hp-$y)*$k ));
-
 
169
 
-
 
170
		$this->_Arc($xc + $r*$MyArc, $yc - $r, $xc + $r, $yc - $r*$MyArc, $xc + $r, $yc);
-
 
171
		$xc = $x+$w-$r ;
-
 
172
		$yc = $y+$h-$r;
-
 
173
		$this->_out(sprintf('%.2F %.2F l',($x+$w)*$k,($hp-$yc)*$k));
-
 
174
		$this->_Arc($xc + $r, $yc + $r*$MyArc, $xc + $r*$MyArc, $yc + $r, $xc, $yc + $r);
-
 
175
		$xc = $x+$r ;
-
 
176
		$yc = $y+$h-$r;
-
 
177
		$this->_out(sprintf('%.2F %.2F l',$xc*$k,($hp-($y+$h))*$k));
-
 
178
		$this->_Arc($xc - $r*$MyArc, $yc + $r, $xc - $r, $yc + $r*$MyArc, $xc - $r, $yc);
-
 
179
		$xc = $x+$r ;
-
 
180
		$yc = $y+$r;
-
 
181
		$this->_out(sprintf('%.2F %.2F l',($x)*$k,($hp-$yc)*$k ));
-
 
182
		$this->_Arc($xc - $r, $yc - $r*$MyArc, $xc - $r*$MyArc, $yc - $r, $xc, $yc - $r);
-
 
183
		$this->_out($op);
-
 
184
	}
-
 
185
    //fonction arc de cercle
-
 
186
	function _Arc($x1, $y1, $x2, $y2, $x3, $y3)
-
 
187
	{
-
 
188
		$h = $this->h;
-
 
189
		$this->_out(sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $x1*$this->k, ($h-$y1)*$this->k,
-
 
190
			$x2*$this->k, ($h-$y2)*$this->k, $x3*$this->k, ($h-$y3)*$this->k));
-
 
191
	}
-
 
192
}
-
 
193
 
149
 
194
//création du constructeur pdf avec fpdf : portrait P sinon paysage L, unite  mm, page A4
150
// Préparation de la fiche PDF
195
$pdf = new PDF('L','mm','A5'); 
151
$pdf = new ticketsPDF(2,3);
-
 
152
$pdf->setTicketsTitle($l_title_imp);
-
 
153
$pdf->setTicketsFooter($l_footer_imp);
196
$pdf->AliasNbPages();
154
$pdf->newTickets();
-
 
155
$pdf->Ln(5);
197
//creation de la page
156
$pdf->addInfos($l_login_imp, $log_imp);
-
 
157
$pdf->addInfos($l_password_imp, $passwd_imp);
198
$pdf->Addpage();
158
$pdf->Ln(5);
-
 
159
$pdf->addInfos($l_max_all_session_imp, $mas_imp);
199
//Couleur du texte en noir
160
$pdf->addInfos($l_session_timeout_imp, $sto_imp);
-
 
161
$pdf->addInfos($l_max_daily_session_imp, $mds_imp);
-
 
162
$pdf->addInfos($l_expiration_imp, $exp_imp);
-
 
163
$pdf->Ln(10);
200
$pdf->SetTextColor(0);
164
$pdf->addComment($l_explain);
201
 
165
 
202
//création du cadre arrondi qui entoure le ticket d'impression
-
 
203
//x, y : coin supérieur gauche du rectangle.w, h : largeur et hauteur. r : rayon des coins arrondis.
-
 
204
//style : comme celui de Rect() : F, D (défaut), FD ou DF. 
-
 
205
$pdf->RoundedRect(40, 32, 130, 80, 3.5, 'D');
-
 
206
//création utilisateur et mot de passe coordonnées x , y hauteur et largeur , texte
-
 
207
$pdf->Ln(5); 
-
 
208
$pdf->SetFont('Arial','',12);
166
// Création du duplicata
209
$pdf->cell(50);
167
$pdf->newTickets();
210
$pdf->Cell(45,10,utf8_decode($l_login_imp),0,0,'R');
-
 
211
$pdf->SetFont('Arial','B',12);
-
 
212
$pdf->Cell(45,10,$log_imp,0,1,'L');
-
 
213
$pdf->cell(50);
168
$pdf->Ln(5);
214
$pdf->SetFont('Arial','',12);
-
 
215
$pdf->Cell(45,10,utf8_decode($l_password_imp),0,0,'R');
-
 
216
$pdf->SetFont('Arial','B',12);
169
$pdf->addInfos($l_login_imp, $log_imp);
217
$pdf->Cell(45,10,$passwd_imp,0,1,'L');
170
$pdf->addInfos($l_password_imp, $passwd_imp);
218
//saut de ligne 
-
 
219
$pdf->Ln(7); 
171
$pdf->Ln(5);
220
//création des attributs utilisateurs coordonnées x , y hauteur et largeur , texte
-
 
221
$pdf->cell(50);
-
 
222
$pdf->SetFont('Arial','',12);
-
 
223
$pdf->Cell(45,10,utf8_decode($l_max_all_session_imp),0,0,'R');
172
$pdf->addInfos($l_max_all_session_imp, $mas_imp);
224
$pdf->SetFont('Arial','B',12);
-
 
225
if ($mas_imp == "Unlimited") $mas_imp=utf8_decode($l_unlimited);
-
 
226
$pdf->Cell(45,10,$mas_imp,0,1,'L');
-
 
227
$pdf->cell(50);
-
 
228
$pdf->SetFont('Arial','',12);
-
 
229
$pdf->Cell(45,10,utf8_decode($l_session_timeout_imp),0,0,'R');
173
$pdf->addInfos($l_session_timeout_imp, $sto_imp);
230
$pdf->SetFont('Arial','B',12);
-
 
231
if ($sto_imp == "Unlimited") $sto_imp=utf8_decode($l_unlimited);
-
 
232
$pdf->Cell(45,10,$sto_imp,0,1,'L');
-
 
233
$pdf->cell(50);
-
 
234
$pdf->SetFont('Arial','',12);
-
 
235
$pdf->Cell(45,10,utf8_decode($l_max_daily_session_imp),0,0,'R');
-
 
236
$pdf->SetFont('Arial','B',12);
-
 
237
if ($mds_imp == "Unlimited") $mds_imp=utf8_decode($l_unlimited);
-
 
238
$pdf->Cell(45,10,$mds_imp,0,1,'L');
-
 
239
//$pdf->SetFont('Arial','',12);
-
 
240
//$pdf->cell(50);
-
 
241
//$pdf->Cell(45,10,$l_max_monthly_session_imp,0,0,'R');
174
$pdf->addInfos($l_max_daily_session_imp, $mds_imp);
242
//$pdf->SetFont('Arial','B',12);
-
 
243
//$pdf->Cell(45,10,$mms_imp,0,1,'L');
-
 
244
$pdf->cell(50);
-
 
245
$pdf->SetFont('Arial','',12);
-
 
246
$pdf->Cell(45,10,utf8_decode($l_expiration_imp),0,0,'R');
175
$pdf->addInfos($l_expiration_imp, $exp_imp);
247
$pdf->SetFont('Arial','B',12);
-
 
248
if ($exp_imp == "Without") $exp_imp=utf8_decode($l_without);
-
 
249
$pdf->Cell(45,10,$exp_imp,0,1,'L');
-
 
250
$pdf->Ln(7); 
176
$pdf->Ln(10);
251
$pdf->cell(30);
-
 
252
$pdf->SetFont('Arial','',8);
-
 
253
$pdf->Cell(0,5,utf8_decode($l_explain1_imp),0,1,'L');
-
 
254
$pdf->cell(30);
-
 
255
$pdf->SetFont('Arial','',8);
177
$pdf->addComment($l_explain);
256
$pdf->Cell(0,5,utf8_decode($l_explain2_imp),0,1,'L');
-
 
257
 
178
 
258
// envoie du document au navigateur 
179
// envoie du document au navigateur 
259
$ticket_name="ticket_".$log_imp.".pdf";
180
$ticket_name="ticket_".$log_imp.".pdf";
260
$pdf->Output("ticket.pdf");
181
$pdf->Output("ticket.pdf");
261
header ('Location: ticket.pdf');
182
header ('Location: ticket.pdf');