Subversion Repositories ALCASAR

Rev

Rev 921 | Rev 926 | 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";
18
	       	$l_explain1_imp = "Entrer 'alcasar' dans votre navigateur pour gérer votre compte (déconnexion, mot de passe, etc.).";
913 richard 19
		$l_login_imp = "Utilisateur :";
20
		$l_password_imp = "Mot de passe :";
921 richard 21
		$l_max_all_session_imp="Durée totale autorisée :";
913 richard 22
		$l_session_timeout_imp="Durée d'une session :";
23
		$l_max_daily_session_imp="Durée journalière :";
24
		$l_max_monthly_session_imp ="Durée mensuelle :";
25
		$l_expiration_imp="Date d'expiration :";
922 richard 26
		$l_unlimited="Illimitée";
27
		$l_without="Aucune";
913 richard 28
	break;
29
	case 'de':
921 richard 30
		$l_title_imp = "INTERNETZUGANG TICKET";
31
		$l_footer_imp = "Präsentiert von ALCASAR";
32
	       	$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, logout, etc.).";
913 richard 33
		$l_login_imp = "Login :";
34
		$l_password_imp = "Passwort :";
35
		$l_max_all_session_imp="Maximale erlaubt Dauer :";
36
		$l_session_timeout_imp="Dauer der Sitzung :";
37
		$l_max_daily_session_imp="Stunden t&auml;glich :";
38
		$l_max_monthly_session_imp ="monatlich Dauer :";
39
		$l_expiration_imp="Verfallsdatum :";
922 richard 40
		$l_unlimited="Unbegrentz";
41
		$l_without="Ohne";
913 richard 42
	break;
43
	case 'nl':
44
		$l_title_imp = "ONTVANGST INTERNET";
921 richard 45
		$l_footer_imp = "Powered by ALCASAR";
922 richard 46
	       	$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, logout, etc.).";
913 richard 47
		$l_login_imp = "Gebruikers :";
48
		$l_password_imp = "Wachtwoord :";
921 richard 49
		$l_max_all_session_imp="Totaal toegestane tijd :";
913 richard 50
		$l_session_timeout_imp="Sessieduur :";
51
		$l_max_daily_session_imp="Dagelijkse uren :";
52
		$l_max_monthly_session_imp ="Maandelijkse duur :";
53
		$l_expiration_imp="Vervaldatum :";
922 richard 54
		$l_unlimited="Onbeperkte";
55
		$l_without="Ohne";
913 richard 56
	break;
57
	case 'es':
58
		$l_title_imp = "BONO INTERNET";
921 richard 59
		$l_footer_imp = "Desarrollado por ALCASAR";
922 richard 60
	       	$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, logout, etc.).";
913 richard 61
		$l_login_imp = "Usuario :";
62
		$l_password_imp = "Contraseña :";
921 richard 63
		$l_max_all_session_imp="Tiempo total permitido :";
913 richard 64
		$l_session_timeout_imp="Duraciôn de Sesiôn :";
65
		$l_max_daily_session_imp="Horas diarias :";
66
		$l_max_monthly_session_imp ="Duraciôn mensual :";
67
		$l_expiration_imp="Fecha de caducidad :";
922 richard 68
		$l_unlimited="Ilimitado";
69
		$l_without="Sin";
913 richard 70
	break;
71
	case 'it':
72
		$l_title_imp = "RICEVIMENTO INTERNET";
921 richard 73
		$l_footer_imp = "Powered by ALCASAR";
922 richard 74
	       	$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, logout, etc.).";
913 richard 75
		$l_login_imp = "Utenti :";
76
		$l_password_imp = "Password :";
921 richard 77
		$l_max_all_session_imp="Tempo totale consentito:";
913 richard 78
		$l_session_timeout_imp="Durata della sessione :";
79
		$l_max_daily_session_imp="Ore giornaliere :";
80
		$l_max_monthly_session_imp ="Durata mensile :";
81
		$l_expiration_imp="Data di scadenza :";
922 richard 82
		$l_unlimited="Illimitato";
83
		$l_without="Senza";
921 richard 84
	break;
85
	case 'pt':
86
		$l_title_imp = "BILHETE DE ACESSO À INTERNET";
87
		$l_footer_imp = "Desenvolvido por ALCASAR";
922 richard 88
	       	$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, logout, etc.).";
921 richard 89
		$l_login_imp = "Usuário :";
90
		$l_password_imp = "Senha :";
91
		$l_max_all_session_imp="Tempo máximo de toda conexão :";
92
		$l_session_timeout_imp="Fim da conexão :";
93
		$l_max_daily_session_imp="Conexão máxima diária :";
94
		$l_max_monthly_session_imp ="MConexão máxima mensal :";
95
		$l_expiration_imp="Data de vencimento :";
922 richard 96
		$l_unlimited="Ilimitado";
97
		$l_without="Sem";
98
	break;
913 richard 99
	default:
921 richard 100
		$l_title_imp = "INTERNET ACCESS TICKET";
101
		$l_footer_imp = "Powered by ALCASAR";
922 richard 102
	       	$l_explain1_imp = "Enter 'alcasar' in your browser to manage your account (password, logout, etc.).";
913 richard 103
		$l_login_imp = "Login :";
104
		$l_password_imp = "Password :";
921 richard 105
		$l_max_all_session_imp="Total time allowed :";
913 richard 106
		$l_session_timeout_imp="Session timeout :";
107
		$l_max_daily_session_imp="Max daily session :";
108
		$l_max_monthly_session_imp ="Max monthly session :";
109
		$l_expiration_imp="Expiration date :";
922 richard 110
		$l_unlimited="Unlimited";
111
		$l_without="Without";
913 richard 112
	break;
113
	}
508 richard 114
//création de la classe PDF pour faire l'entête et pieds de page
922 richard 115
require('../lib/fpdf/fpdf.php');
508 richard 116
class PDF extends FPDF
117
{
118
	//Entête
119
	function Header()
120
	{
913 richard 121
		global $l_title_imp;
122
		//Logo coordonnées x , y, largeur de l'image 
123
		$this->Image('../../../images/logo-alcasar.png',25,5,25);
921 richard 124
		$this->Image('../../../images/organisme.png',250,5,25);
508 richard 125
		//Police Arial gras 15
126
		$this->SetFont('Arial','B',18);
127
		//couleur de l'écriture en rouge
128
		$this->SetTextColor(250,1,10);
129
		//Titre largeur cellule x , hauteur y, texte, bordure 0 , Indique où déplace la prochaine position courante 0 droite, centré C
921 richard 130
		$this->Cell(190,10,utf8_decode($l_title_imp),0,0,'C');
508 richard 131
		//Saut de ligne
132
		$this->Ln(25);
133
	}
134
	//Pied de page
135
	function Footer()
136
	{
921 richard 137
		global $l_footer_imp;
508 richard 138
		//Positionnement à 1,5 cm du bas
139
		$this->SetY(-15);
140
		//Police Arial italique 8
141
		$this->SetFont('Arial','I',8);
142
		//Produit par est volontairement resté en français
921 richard 143
		$this->Cell(200,20,utf8_decode($l_footer_imp),0,0,'C');
508 richard 144
	}
145
	//fonction rectangle
913 richard 146
	//Rectangle : x, y : coin supérieur gauche du rectangle.w, h : largeur et hauteur. r : rayon des coins arrondis.
147
	//style : comme celui de Rect() : F, D (défaut), FD ou DF. 
508 richard 148
	function RoundedRect($x, $y, $w, $h, $r, $style = '')
149
	{
150
		$k = $this->k;
151
		$hp = $this->h;
152
		if($style=='F')
153
			$op='f';
154
		elseif($style=='FD' or $style=='DF')
155
			$op='B';
156
		else
157
			$op='S';
158
		$MyArc = 4/3 * (sqrt(2) - 1);
159
		$this->_out(sprintf('%.2F %.2F m',($x+$r)*$k,($hp-$y)*$k ));
160
		$xc = $x+$w-$r ;
161
		$yc = $y+$r;
162
		$this->_out(sprintf('%.2F %.2F l', $xc*$k,($hp-$y)*$k ));
163
 
164
		$this->_Arc($xc + $r*$MyArc, $yc - $r, $xc + $r, $yc - $r*$MyArc, $xc + $r, $yc);
165
		$xc = $x+$w-$r ;
166
		$yc = $y+$h-$r;
167
		$this->_out(sprintf('%.2F %.2F l',($x+$w)*$k,($hp-$yc)*$k));
168
		$this->_Arc($xc + $r, $yc + $r*$MyArc, $xc + $r*$MyArc, $yc + $r, $xc, $yc + $r);
169
		$xc = $x+$r ;
170
		$yc = $y+$h-$r;
171
		$this->_out(sprintf('%.2F %.2F l',$xc*$k,($hp-($y+$h))*$k));
172
		$this->_Arc($xc - $r*$MyArc, $yc + $r, $xc - $r, $yc + $r*$MyArc, $xc - $r, $yc);
173
		$xc = $x+$r ;
174
		$yc = $y+$r;
175
		$this->_out(sprintf('%.2F %.2F l',($x)*$k,($hp-$yc)*$k ));
176
		$this->_Arc($xc - $r, $yc - $r*$MyArc, $xc - $r*$MyArc, $yc - $r, $xc, $yc - $r);
177
		$this->_out($op);
178
	}
179
    //fonction arc de cercle
180
	function _Arc($x1, $y1, $x2, $y2, $x3, $y3)
181
	{
182
		$h = $this->h;
183
		$this->_out(sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $x1*$this->k, ($h-$y1)*$this->k,
184
			$x2*$this->k, ($h-$y2)*$this->k, $x3*$this->k, ($h-$y3)*$this->k));
185
	}
186
}
187
 
188
//création du constructeur pdf avec fpdf : portrait P sinon paysage L, unite  mm, page A4
189
$pdf = new PDF('L','mm','A5'); 
190
$pdf->AliasNbPages();
191
//creation de la page
192
$pdf->Addpage();
193
//Couleur du texte en noir
194
$pdf->SetTextColor(0);
195
 
196
//création du cadre arrondi qui entoure le ticket d'impression
197
//x, y : coin supérieur gauche du rectangle.w, h : largeur et hauteur. r : rayon des coins arrondis.
198
//style : comme celui de Rect() : F, D (défaut), FD ou DF. 
199
$pdf->RoundedRect(40, 32, 130, 80, 3.5, 'D');
200
//création utilisateur et mot de passe coordonnées x , y hauteur et largeur , texte
201
$pdf->Ln(5); 
202
$pdf->SetFont('Arial','',12);
203
$pdf->cell(50);
921 richard 204
$pdf->Cell(45,10,utf8_decode($l_login_imp),0,0,'R');
508 richard 205
$pdf->SetFont('Arial','B',12);
206
$pdf->Cell(45,10,$log_imp,0,1,'L');
207
$pdf->cell(50);
208
$pdf->SetFont('Arial','',12);
921 richard 209
$pdf->Cell(45,10,utf8_decode($l_password_imp),0,0,'R');
508 richard 210
$pdf->SetFont('Arial','B',12);
211
$pdf->Cell(45,10,$passwd_imp,0,1,'L');
212
//saut de ligne 
213
$pdf->Ln(7); 
214
//création des attributs utilisateurs coordonnées x , y hauteur et largeur , texte
901 richard 215
$pdf->cell(50);
508 richard 216
$pdf->SetFont('Arial','',12);
921 richard 217
$pdf->Cell(45,10,utf8_decode($l_max_all_session_imp),0,0,'R');
901 richard 218
$pdf->SetFont('Arial','B',12);
922 richard 219
if ($mas_imp == "Unlimited") $mas_imp=utf8_decode($l_unlimited);
901 richard 220
$pdf->Cell(45,10,$mas_imp,0,1,'L');
508 richard 221
$pdf->cell(50);
901 richard 222
$pdf->SetFont('Arial','',12);
921 richard 223
$pdf->Cell(45,10,utf8_decode($l_session_timeout_imp),0,0,'R');
508 richard 224
$pdf->SetFont('Arial','B',12);
922 richard 225
if ($sto_imp == "Unlimited") $sto_imp=utf8_decode($l_unlimited);
508 richard 226
$pdf->Cell(45,10,$sto_imp,0,1,'L');
227
$pdf->cell(50);
228
$pdf->SetFont('Arial','',12);
921 richard 229
$pdf->Cell(45,10,utf8_decode($l_max_daily_session_imp),0,0,'R');
508 richard 230
$pdf->SetFont('Arial','B',12);
922 richard 231
if ($mds_imp == "Unlimited") $mds_imp=utf8_decode($l_unlimited);
508 richard 232
$pdf->Cell(45,10,$mds_imp,0,1,'L');
901 richard 233
//$pdf->SetFont('Arial','',12);
234
//$pdf->cell(50);
235
//$pdf->Cell(45,10,$l_max_monthly_session_imp,0,0,'R');
236
//$pdf->SetFont('Arial','B',12);
237
//$pdf->Cell(45,10,$mms_imp,0,1,'L');
508 richard 238
$pdf->cell(50);
239
$pdf->SetFont('Arial','',12);
921 richard 240
$pdf->Cell(45,10,utf8_decode($l_expiration_imp),0,0,'R');
508 richard 241
$pdf->SetFont('Arial','B',12);
922 richard 242
if ($exp_imp == "Without") $exp_imp=utf8_decode($l_without);
508 richard 243
$pdf->Cell(45,10,$exp_imp,0,1,'L');
921 richard 244
$pdf->Ln(7); 
245
$pdf->cell(50);
246
$pdf->SetFont('Arial','',8);
247
$pdf->Cell(0,10,utf8_decode($l_explain1_imp),0,1,'L');
508 richard 248
 
249
//renvoie au navigateur du document 
913 richard 250
$ticket_name="ticket_".$log_imp.".pdf";
251
$pdf->Output($ticket_name,'D');
508 richard 252
 
253
?>