Subversion Repositories ALCASAR

Rev

Rev 1129 | Rev 1157 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log

Rev Author Line No. Line
508 richard 1
<?php
509 richard 2
// ticket d'impression (thank's to Geoffroy MUSITELLI)
508 richard 3
//--recupération des variables provenant du formulaire 
913 richard 4
$langue_imp=utf8_decode($_POST["langue_imp"]);
584 richard 5
$log_imp=utf8_decode($_POST["log_imp"]);
6
$passwd_imp=utf8_decode($_POST["passwd_imp"]);
7
$exp_imp=utf8_decode($_POST["exp_imp"]);
8
$sto_imp=utf8_decode($_POST["sto_imp"]);
901 richard 9
$mas_imp=utf8_decode($_POST["mas_imp"]);
584 richard 10
$mds_imp=utf8_decode($_POST["mds_imp"]);
11
$mms_imp=utf8_decode($_POST["mms_imp"]);
508 richard 12
//--initialisation des classes FPDF
913 richard 13
//Langue du Ticket d'impression en fonction de la liste déroulante
14
switch ($langue_imp){
15
	case 'fr':
921 richard 16
		$l_title_imp = "TICKET D'ACCÈS INTERNET";
17
		$l_footer_imp = "Généré par ALCASAR";
1154 crox53 18
	       	$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.";
913 richard 20
		$l_login_imp = "Utilisateur :";
21
		$l_password_imp = "Mot de passe :";
921 richard 22
		$l_max_all_session_imp="Durée totale autorisée :";
913 richard 23
		$l_session_timeout_imp="Durée d'une session :";
24
		$l_max_daily_session_imp="Durée journalière :";
25
		$l_max_monthly_session_imp ="Durée mensuelle :";
26
		$l_expiration_imp="Date d'expiration :";
922 richard 27
		$l_unlimited="Illimitée";
28
		$l_without="Aucune";
913 richard 29
	break;
30
	case 'de':
921 richard 31
		$l_title_imp = "INTERNETZUGANG TICKET";
32
		$l_footer_imp = "Präsentiert von ALCASAR";
1154 crox53 33
	       	$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.";
913 richard 35
		$l_login_imp = "Login :";
36
		$l_password_imp = "Passwort :";
37
		$l_max_all_session_imp="Maximale erlaubt Dauer :";
38
		$l_session_timeout_imp="Dauer der Sitzung :";
39
		$l_max_daily_session_imp="Stunden t&auml;glich :";
40
		$l_max_monthly_session_imp ="monatlich Dauer :";
41
		$l_expiration_imp="Verfallsdatum :";
922 richard 42
		$l_unlimited="Unbegrentz";
43
		$l_without="Ohne";
913 richard 44
	break;
45
	case 'nl':
46
		$l_title_imp = "ONTVANGST INTERNET";
921 richard 47
		$l_footer_imp = "Powered by ALCASAR";
1154 crox53 48
	       	$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.";
913 richard 50
		$l_login_imp = "Gebruikers :";
51
		$l_password_imp = "Wachtwoord :";
921 richard 52
		$l_max_all_session_imp="Totaal toegestane tijd :";
913 richard 53
		$l_session_timeout_imp="Sessieduur :";
54
		$l_max_daily_session_imp="Dagelijkse uren :";
55
		$l_max_monthly_session_imp ="Maandelijkse duur :";
56
		$l_expiration_imp="Vervaldatum :";
922 richard 57
		$l_unlimited="Onbeperkte";
58
		$l_without="Ohne";
913 richard 59
	break;
60
	case 'es':
61
		$l_title_imp = "BONO INTERNET";
921 richard 62
		$l_footer_imp = "Desarrollado por ALCASAR";
1154 crox53 63
	       	$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.";
913 richard 65
		$l_login_imp = "Usuario :";
66
		$l_password_imp = "Contraseña :";
921 richard 67
		$l_max_all_session_imp="Tiempo total permitido :";
913 richard 68
		$l_session_timeout_imp="Duraciôn de Sesiôn :";
69
		$l_max_daily_session_imp="Horas diarias :";
70
		$l_max_monthly_session_imp ="Duraciôn mensual :";
71
		$l_expiration_imp="Fecha de caducidad :";
922 richard 72
		$l_unlimited="Ilimitado";
73
		$l_without="Sin";
913 richard 74
	break;
75
	case 'it':
76
		$l_title_imp = "RICEVIMENTO INTERNET";
921 richard 77
		$l_footer_imp = "Powered by ALCASAR";
1154 crox53 78
	       	$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.";
913 richard 80
		$l_login_imp = "Utenti :";
81
		$l_password_imp = "Password :";
921 richard 82
		$l_max_all_session_imp="Tempo totale consentito:";
913 richard 83
		$l_session_timeout_imp="Durata della sessione :";
84
		$l_max_daily_session_imp="Ore giornaliere :";
85
		$l_max_monthly_session_imp ="Durata mensile :";
86
		$l_expiration_imp="Data di scadenza :";
922 richard 87
		$l_unlimited="Illimitato";
88
		$l_without="Senza";
921 richard 89
	break;
90
	case 'pt':
91
		$l_title_imp = "BILHETE DE ACESSO À INTERNET";
92
		$l_footer_imp = "Desenvolvido por ALCASAR";
1154 crox53 93
	       	$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.";
921 richard 95
		$l_login_imp = "Usuário :";
96
		$l_password_imp = "Senha :";
97
		$l_max_all_session_imp="Tempo máximo de toda conexão :";
98
		$l_session_timeout_imp="Fim da conexão :";
99
		$l_max_daily_session_imp="Conexão máxima diária :";
100
		$l_max_monthly_session_imp ="MConexão máxima mensal :";
101
		$l_expiration_imp="Data de vencimento :";
922 richard 102
		$l_unlimited="Ilimitado";
103
		$l_without="Sem";
104
	break;
913 richard 105
	default:
921 richard 106
		$l_title_imp = "INTERNET ACCESS TICKET";
107
		$l_footer_imp = "Powered by ALCASAR";
1154 crox53 108
	       	$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.";
913 richard 110
		$l_login_imp = "Login :";
111
		$l_password_imp = "Password :";
921 richard 112
		$l_max_all_session_imp="Total time allowed :";
913 richard 113
		$l_session_timeout_imp="Session timeout :";
114
		$l_max_daily_session_imp="Max daily session :";
115
		$l_max_monthly_session_imp ="Max monthly session :";
116
		$l_expiration_imp="Expiration date :";
922 richard 117
		$l_unlimited="Unlimited";
118
		$l_without="Without";
913 richard 119
	break;
120
	}
508 richard 121
//création de la classe PDF pour faire l'entête et pieds de page
1154 crox53 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
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 ));
508 richard 169
 
1154 crox53 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
}
508 richard 193
 
1154 crox53 194
//création du constructeur pdf avec fpdf : portrait P sinon paysage L, unite  mm, page A4
195
$pdf = new PDF('L','mm','A5'); 
196
$pdf->AliasNbPages();
197
//creation de la page
198
$pdf->Addpage();
199
//Couleur du texte en noir
200
$pdf->SetTextColor(0);
508 richard 201
 
1154 crox53 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);
209
$pdf->cell(50);
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);
214
$pdf->SetFont('Arial','',12);
215
$pdf->Cell(45,10,utf8_decode($l_password_imp),0,0,'R');
216
$pdf->SetFont('Arial','B',12);
217
$pdf->Cell(45,10,$passwd_imp,0,1,'L');
218
//saut de ligne 
219
$pdf->Ln(7); 
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');
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');
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');
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');
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); 
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);
256
$pdf->Cell(0,5,utf8_decode($l_explain2_imp),0,1,'L');
257
 
946 richard 258
// envoie du document au navigateur 
913 richard 259
$ticket_name="ticket_".$log_imp.".pdf";
946 richard 260
$pdf->Output("ticket.pdf");
261
header ('Location: ticket.pdf');
508 richard 262
?>