Ajout de commentaires

This commit is contained in:
Noizette 2021-11-10 23:33:00 +01:00
parent 6a02ddfe87
commit b4629a5ed9
1 changed files with 104 additions and 108 deletions

View File

@ -3,14 +3,13 @@
namespace Garradin;
require_once __DIR__ . '/_inc.php';
$session->requireAccess($session::SECTION_ACCOUNTING, $session::ACCESS_READ);
$membres = new Membres;
qv(['id' => 'required|numeric']);
$id = (int) qg('id');
// Vérification que le document existe
if (!$f = $facture->get($id))
{
throw new UserException("Ce document n'existe pas.");
@ -18,6 +17,7 @@ if (!$f = $facture->get($id))
$moyen_paiement = $facture->getMoyenPaiement($f->moyen_paiement);
// Récupération infos membre
try
{
if ($f->receveur_membre)
@ -43,17 +43,17 @@ catch(UserException $e)
$form->addError($e);
}
// Création du PDF
// Formatage dates
$emission = $f->date_emission->format('d/m/Y');
if (isset($f->date_echeance))
{
$echeance = $f->date_echeance->format('d/m/Y');
}
// Génération factures et devis
// -- Création du PDF
// Génération factures, devis et cotisation
if ($f->type_facture != CERFA)
{
switch ($f->type_facture)
@ -95,9 +95,8 @@ if ($f->type_facture != CERFA)
$reglee = !$f->reglee?'Cette facture est en attente de règlement.':'Cette facture a été reglée.';
$footer = str_replace("\n", '<br>', $plugin->getConfig('footer'));
// Génération du contenu de la facture
ob_start();
echo <<<EOF
<div class="h2">
<span>Contenu</span> - $doc
@ -170,6 +169,7 @@ EOF;
$expiration = date('d/m/Y', strtotime($f->contenu['expiration']));
}
// Génération du contenu du reçu de cotisation
$content = <<<EOF
<div class="h2">
<span>Reçu de votre cotisation</span> - $doc
@ -191,123 +191,119 @@ EOF;
<p><i>Nous vous rappelons que la cotisation nest pas soumise à la TVA et quelle ne donne pas lieu à la délivrance dune facture. Elle nouvre pas droit au bénéfice des dispositions des articles 200, 238 bis et 885-0 V bis A du code général des impôts.</i></p>
</div>
EOF;
}
// Layout du document
ob_start();
//-- Layout du document
echo <<<EOF
ob_start();
echo <<<EOF
<!DOCTYPE html>
<html>
<head>
<title>${doc}_${emission}</title>
<style>
@page {
size: A4 portrait;
margin: 0;
}
<head>
<title>${doc}_${emission}</title>
<style>
@page {
size: A4 portrait;
margin: 0;
}
body {
padding: 4mm;
font-family: Helvetica, Arial, sans;
font-size: 10pt;
background: white;
}
body {
padding: 4mm;
font-family: Helvetica, Arial, sans;
font-size: 10pt;
background: white;
}
.titre {
text-align: center;
font-size: 8pt;
margin-bottom: 6mm;
margin-top: 0mm;
}
.h2 {
margin: 20px 20px 0px 20px;
}
.h2 span {
font-weight: bold;
font-size: 14pt;
}
hr {
margin: 5px 0px 15px 0px;
border: none;
border-top: 1px solid;
}
.adressage {
font-size: 11pt;
margin: auto;
}
.adressage td {
width: 40%;
vertical-align: top;
}
.titre {
text-align: center;
font-size: 8pt;
margin-bottom: 6mm;
margin-top: 0mm;
}
.h2 {
margin: 20px 20px 0px 20px;
}
.h2 span {
font-weight: bold;
font-size: 14pt;
}
hr {
margin: 5px 0px 15px 0px;
border: none;
border-top: 1px solid;
}
.adressage {
font-size: 11pt;
margin: auto;
}
.adressage td {
width: 40%;
vertical-align: top;
}
.contenuTexte {
padding: 0 6mm;
}
.contenuTexte {
padding: 0 6mm;
}
.contenu {
width: 100%;
}
.contenu {
width: 100%;
}
.contenu td, .contenu th {
vertical-align: top;
padding: 8px 10px;
margin : 0px;
border-collapse: collapse;
}
.contenu td, .contenu th {
vertical-align: top;
padding: 8px 10px;
margin : 0px;
border-collapse: collapse;
}
.contenu tr th, .contenu tr td {
text-align: right;
width: 16%;
}
.contenu tr td:nth-child(1), .contenu tr th:nth-child(1) {
text-align: left;
width: 84%;
}
.contenu tr th, .contenu tr td {
text-align: right;
width: 16%;
}
.contenu tr td:nth-child(1), .contenu tr th:nth-child(1) {
text-align: left;
width: 84%;
}
.contenu thead tr, .contenu tfoot tr {
background-color: #CCE;
border: 10px solid black;
}
.contenu tbody tr:nth-child(even) {
background-color: #DDF !important;
}
.contenu tfoot {
display: table-row-group;
}
.contenu thead tr, .contenu tfoot tr {
background-color: #CCE;
border: 10px solid black;
}
.contenu tbody tr:nth-child(even) {
background-color: #DDF !important;
}
.contenu tfoot {
display: table-row-group;
}
footer {
bottom: 0;
margin: 14mm 0;
width: inherit;
font-size: 9pt;
}
</style>
</head>
footer {
bottom: 0;
margin: 14mm 0;
width: inherit;
font-size: 9pt;
}
</style>
</head>
<body>
<p class="titre">
$doc - Émis le $emission
</p>
<body>
<p class="titre">
$doc - Émis le $emission
</p>
<table class="adressage">
<tr>
<td>$asso</td>
<td>$receveur</td>
</tr>
</table>
<br>
$content
</body>
<table class="adressage">
<tr>
<td>$asso</td>
<td>$receveur</td>
</tr>
</table>
<br>
$content
</body>
</html>
EOF;
$html = ob_get_clean();
} // End if facture+devis
} // Génération du CERFA
elseif ($f->type_facture == CERFA)
{
// nom prénom ? pas de champs prénoms / champs identité pour membres