radiantrh/Societes/radiant/Tarifs/Controleur/Editioncarteassure.php
2025-12-30 10:55:06 +00:00

131 lines
4.8 KiB
PHP

<?php
// kane 23/09/2025 => rendre la carte personalisable par societeuser
// Fond blanc
$pdf->SetFillColor(255, 255, 255);
$pdf->Rect(0, 0, 85.6, 54, 'F');
// LOGO SOCIÉTÉ en haut à gauche
if (file_exists($logoSocietePath)) {
$logoGarantPath = $logoSocietePath;
$pdf->Image($logoSocietePath, 3, 3, 15);
}
// LOGO GARANT en haut à droite
//if (file_exists($logoGarantPath)) {
if (is_file($logoGarantPath)) {
$pdf->Image($logoGarantPath, 67, 3, 15);
}
// EN-TÊTE : "CARTE D'ASSURANCE"
$pdf->SetFont('Arial', 'B', 8);
$pdf->SetTextColor(33, 46, 83);
$pdf->SetXY(0, 5);
// $pdf->Cell(85.6, 4, utf8_decode(_('CARTE SANTÉ')), 0, 1, 'C');
$pdf->Cell(85.6, 4, mb_convert_encoding(_('CARTE SANTÉ'), "ISO-8859-1", "UTF-8"), 0, 1, 'C');
$pdf->SetTextColor(0);
// Informations de contact de la société
$pdf->SetFont('Arial', '', 5);
$pdf->SetXY(0, 9);
$pdf->MultiCell(85.6, 3, mb_convert_encoding(_('Siège social').': '. $assure['adresseGeoSociete'].' ', "ISO-8859-1", "UTF-8"), 0, 'C');
$pdf->SetXY(0, 12);
$pdf->Cell(85.6, 3, mb_convert_encoding(_('Tél.').': '.$assure['telephoneSociete'], "ISO-8859-1", "UTF-8"), 0, 1, 'C');
// Ligne séparatrice
$pdf->Line(5, 15, 80, 15);
// Section "Bénéficiaire"
$pdf->SetFont('Arial', 'BUI', 7);
$pdf->SetXY(5, 17);
$pdf->SetTextColor(33, 46, 83);
$pdf->Cell(30, 4, mb_convert_encoding(_('Bénéficiaire'), "ISO-8859-1", "UTF-8"), 0, 1);
$pdf->SetTextColor(0);
// Matricule - en gras et rouge
$pdf->SetFont('Arial', '', 6);
$pdf->SetXY(5, 21);
$pdf->Cell($colonneAlignement - 5, 3, mb_convert_encoding(_('Matricule'), "ISO-8859-1", "UTF-8"), 0, 0);
$pdf->SetFont('Arial', 'B', 6);
$pdf->SetTextColor(255, 0, 0);
$pdf->Cell(25, 3, ' : '.$assure['numeroBeneficiaire'], 0, 1);
$pdf->SetTextColor(0);
// Nom
$pdf->SetFont('Arial', '', 6);
$pdf->SetXY(5, 24);
$pdf->Cell($colonneAlignement - 5, 3, mb_convert_encoding(_('Nom'), "ISO-8859-1", "UTF-8"), 0, 0);
$pdf->SetFont('Arial', 'B', 6);
$pdf->Cell(30, 3, ' : '.substr(mb_convert_encoding($assure['nomBeneficiaire'], "ISO-8859-1", "UTF-8"), 0, 20), 0, 1);
// Prénoms
$pdf->SetFont('Arial', '', 6);
$pdf->SetXY(5, 27);
$pdf->Cell($colonneAlignement - 5, 3, mb_convert_encoding(_('Prénoms'), "ISO-8859-1", "UTF-8"), 0, 0);
$pdf->SetFont('Arial', 'B', 6);
$pdf->Cell(25, 3, ' : '.substr(mb_convert_encoding($assure['prenomsBeneficiaire'], "ISO-8859-1", "UTF-8"), 0, 20), 0, 1);
// Né(e) le - si disponible
if (!empty($assure['dateNaissance'])) {
$pdf->SetFont('Arial', '', 6);
$pdf->SetXY(5, 30);
$pdf->Cell($colonneAlignement - 5, 3, mb_convert_encoding(_('Né(e) le'), "ISO-8859-1", "UTF-8"), 0, 0);
$pdf->SetFont('Arial', 'B', 6);
$pdf->Cell(25, 3, ' : '.dateLang($assure['dateNaissance'], $_SESSION['lang']), 0, 1);
}
$pdf->SetFont('Arial', '', 6);
$pdf->SetXY(5, 33);
$pdf->Cell($colonneAlignement - 5, 3, mb_convert_encoding(_('Statut'), "ISO-8859-1", "UTF-8"), 0, 0);
$pdf->SetFont('Arial', 'B', 6);
$pdf->Cell(28, 3, ' : '.substr(mb_convert_encoding($assure['lienparente'], "ISO-8859-1", "UTF-8"), 0, 20), 0, 1);
// Section "Assuré Principal"
$pdf->SetFont('Arial', 'BUI', 7);
$pdf->SetXY(5, 38);
$pdf->SetTextColor(33, 46, 83);
$pdf->Cell(30, 4, mb_convert_encoding(_('Assuré Principal'), "ISO-8859-1", "UTF-8"), 0, 1);
$pdf->SetTextColor(0);
// Numéro assuré - en gras et rouge
$pdf->SetFont('Arial', '', 6);
$pdf->SetXY(5, 42);
$pdf->Cell($colonneAlignement - 5, 3, mb_convert_encoding(_('Matricule'), "ISO-8859-1", "UTF-8"), 0, 0);
$pdf->SetFont('Arial', 'B', 6);
$pdf->SetTextColor(255, 0, 0);
$pdf->Cell(25, 3, ' : '.$assure['numeroAdherent'], 0, 1);
$pdf->SetTextColor(0);
// Nom et Prénoms assuré
$pdf->SetFont('Arial', '', 6);
$pdf->SetXY(5, 45);
$pdf->Cell($colonneAlignement - 5, 3, mb_convert_encoding(_('Nom & prénoms'), "ISO-8859-1", "UTF-8"), 0, 0);
$pdf->SetFont('Arial', 'B', 6);
$pdf->Cell(15, 3, ' : '.substr(mb_convert_encoding($assure['adherent'], "ISO-8859-1", "UTF-8"), 0, 15), 0, 1);
// Photo de l'assuré (positionnée à droite) - taille réduite
$photoPath = $_SESSION['dossierPhoto_C'].$_SESSION['dossierSociete'].'/Photos/'.$assure['lienPhoto'];
$photoX = 57;
$photoY = 17;
// Vérifier si l'URL est accessible
$headers = @get_headers($photoPath);
if (!empty($assure['lienPhoto']) && $headers && strpos($headers[0], '200')) {
$pdf->Image($photoPath, $photoX, $photoY, 25, 25); // Réduction de 30x30 à 25x25
} else {
// Cadre pour la photo si non disponible
$pdf->Rect($photoX, $photoY, 25, 25);
$pdf->SetFont('Arial', '', 4);
$pdf->SetXY($photoX, $photoY + 12);
$pdf->Cell(25, 3, mb_convert_encoding(_('Photo non disponible'), "ISO-8859-1", "UTF-8"), 0, 1, 'C');
}
// Nom du souscripteur en bas
$pdf->SetFont('Arial', 'B', 6);
$pdf->SetXY(0, 49);
$pdf->Cell(85.6, 3, mb_convert_encoding($assure['souscripteur'], "ISO-8859-1", "UTF-8"), 0, 1, 'C');