From f09f7ed05bac57c35664e0b1dbe8c30cd94603a6 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Thu, 26 Apr 2007 09:13:05 +0000 Subject: [PATCH] Modif: mise en option de la protection et l'encryption des pdf --- htdocs/admin/security.php | 41 +++++++++ .../paiement/cheque/pdf/pdf_blochet.class.php | 11 ++- .../class/courrier-droit-editeur.class.php | 92 ++++++++++++------- .../mods/methode_expedition.modules.php | 11 ++- .../mods/pdf/pdf_expedition_merou.modules.php | 13 ++- .../modules/pdf/pdf_muscadet.modules.php | 11 ++- .../modules/commande/pdf_edison.modules.php | 11 +++ .../modules/commande/pdf_einstein.modules.php | 11 ++- .../modules/facture/pdf_crabe.modules.php | 11 ++- .../modules/facture/pdf_huitre.modules.php | 11 ++- .../modules/facture/pdf_oursin.modules.php | 11 ++- .../modules/fichinter/pdf_soleil.modules.php | 11 ++- .../propale/pdf_propale_azur.modules.php | 11 ++- .../propale/pdf_propale_bleu.modules.php | 11 ++- .../propale/pdf_propale_jaune.modules.php | 11 ++- .../propale/pdf_propale_rouge.modules.php | 11 ++- .../propale/pdf_propale_vert.modules.php | 11 ++- .../modules/rapport/pdf_paiement.class.php | 11 ++- .../mods/pdf/pdf_sirocco.modules.php | 11 ++- .../livraison/mods/pdf/pdf_typhon.modules.php | 11 ++- .../script/facturation-impression.php | 11 ++- 21 files changed, 291 insertions(+), 53 deletions(-) diff --git a/htdocs/admin/security.php b/htdocs/admin/security.php index 0a2985c94da..9a900952baa 100644 --- a/htdocs/admin/security.php +++ b/htdocs/admin/security.php @@ -119,6 +119,19 @@ else if ($_GET["action"] == 'disable_encryptdbpassconf') } } +if ($_GET["action"] == 'activate_pdfsecurity') +{ + dolibarr_set_const($db, "PDF_SECURITY_ENCRYPTION", "1"); + Header("Location: security.php"); + exit; +} +else if ($_GET["action"] == 'disable_pdfsecurity') +{ + dolibarr_del_const($db, "PDF_SECURITY_ENCRYPTION"); + Header("Location: security.php"); + exit; +} + /* * Affichage onglet */ @@ -302,6 +315,34 @@ if($conf->global->MAIN_DATABASE_PWD_CONFIG_ENCRYPTED == 1) print ""; print ''; +// Encryption et protection des PDF +$var=!$var; +print ""; +print ''.$langs->trans("ProtectAndEncryptPdfFiles").''; +print ''; +if($conf->global->PDF_SECURITY_ENCRYPTION == 1) +{ + print img_tick(); +} + +print ''; + +if ($conf->global->PDF_SECURITY_ENCRYPTION == 0) +{ + print ''; + print ''.$langs->trans("Activate").''; + print ""; +} +if($conf->global->PDF_SECURITY_ENCRYPTION == 1) +{ + print ''; + print ''.$langs->trans("Disable").''; + print ""; +} + +print ""; +print ''; + print ''; print ''; diff --git a/htdocs/compta/paiement/cheque/pdf/pdf_blochet.class.php b/htdocs/compta/paiement/cheque/pdf/pdf_blochet.class.php index e1eb4d9152b..7b42171c4f1 100644 --- a/htdocs/compta/paiement/cheque/pdf/pdf_blochet.class.php +++ b/htdocs/compta/paiement/cheque/pdf/pdf_blochet.class.php @@ -221,7 +221,16 @@ class BordereauChequeBlochet $_file = $dir . "bordereau-".$number.".pdf"; $pdf = new FPDI_Protection('P','mm','A4'); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); diff --git a/htdocs/docs/class/courrier-droit-editeur.class.php b/htdocs/docs/class/courrier-droit-editeur.class.php index 29fe5246a41..200c49bd3de 100644 --- a/htdocs/docs/class/courrier-droit-editeur.class.php +++ b/htdocs/docs/class/courrier-droit-editeur.class.php @@ -58,6 +58,8 @@ class pdf_courrier_droit_editeur */ function Generate($numero) { + global $conf; + $this->file = $numero.strftime("%Y", time()); $this->extension = "pdf"; @@ -80,41 +82,63 @@ class pdf_courrier_droit_editeur $resql=$this->db->query($sql); if ($resql) - { - $fichref = "Droits-$year"; - $dir_all = DOL_DATA_ROOT."/ged/" . get_exdir($numero); - $file_all = $dir_all . $numero . ".pdf"; - - $pdf_all=new FPDF('P','mm',$this->format); - $pdf_all->Open(); - - - while ($obj = $this->db->fetch_object($resql) ) - { - $id = $obj->idp; - - dolibarr_syslog("droits-editeurs.php id:$id", LOG_DEBUG ); - - $coupdf = new pdf_courrier_droit_editeur($this->db, $langs); - - $fichref = "Droits-$year"; - $dir = DOL_DATA_ROOT."/societe/courrier/" . get_exdir($id); - $file = $dir . $fichref . ".pdf"; - - $pdf=new FPDF('P','mm',$this->format); - $pdf->Open(); - - $coupdf->Write($id, $dir, $year, $pdf); - $coupdf->Write($id, $dir_all, $year, $pdf_all); - - $pdf->Close(); - $pdf->Output($file); - dolibarr_syslog("droits-editeurs.php write $file", LOG_DEBUG ); - } + { + $fichref = "Droits-$year"; + $dir_all = DOL_DATA_ROOT."/ged/" . get_exdir($numero); + $file_all = $dir_all . $numero . ".pdf"; - $pdf_all->Close(); - $pdf_all->Output($file_all); - dolibarr_syslog("droits-editeurs.php write $fileall", LOG_DEBUG ); + // Initialisation document vierge + $pdf_all=new FPDI_Protection('P','mm',$this->format); + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf_all->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + + $pdf_all->Open(); + + + while ($obj = $this->db->fetch_object($resql) ) + { + $id = $obj->idp; + + dolibarr_syslog("droits-editeurs.php id:$id", LOG_DEBUG ); + + $coupdf = new pdf_courrier_droit_editeur($this->db, $langs); + + $fichref = "Droits-$year"; + $dir = DOL_DATA_ROOT."/societe/courrier/" . get_exdir($id); + $file = $dir . $fichref . ".pdf"; + + // Initialisation document vierge + $pdf=new FPDI_Protection('P','mm',$this->format); + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + + $pdf->Open(); + + $coupdf->Write($id, $dir, $year, $pdf); + $coupdf->Write($id, $dir_all, $year, $pdf_all); + + $pdf->Close(); + $pdf->Output($file); + dolibarr_syslog("droits-editeurs.php write $file", LOG_DEBUG ); + } + + $pdf_all->Close(); + $pdf_all->Output($file_all); + dolibarr_syslog("droits-editeurs.php write $fileall", LOG_DEBUG ); } else diff --git a/htdocs/expedition/mods/methode_expedition.modules.php b/htdocs/expedition/mods/methode_expedition.modules.php index 15dac3b3bf7..f916073d8e8 100644 --- a/htdocs/expedition/mods/methode_expedition.modules.php +++ b/htdocs/expedition/mods/methode_expedition.modules.php @@ -81,7 +81,16 @@ Class methode_expedition { $pdf=new FPDI_Protection('P','mm','A4'); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/expedition/mods/pdf/pdf_expedition_merou.modules.php b/htdocs/expedition/mods/pdf/pdf_expedition_merou.modules.php index 9508f03365a..c25c6c3d244 100644 --- a/htdocs/expedition/mods/pdf/pdf_expedition_merou.modules.php +++ b/htdocs/expedition/mods/pdf/pdf_expedition_merou.modules.php @@ -142,9 +142,18 @@ Class pdf_expedition_merou extends ModelePdfExpedition //Si le dossier existe if (file_exists($dir)) { - // Initialisation Bon vierge + // Initialisation Bon vierge $pdf = new FPDI_Protection('l','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); //Generation de l entete du fichier diff --git a/htdocs/fourn/commande/modules/pdf/pdf_muscadet.modules.php b/htdocs/fourn/commande/modules/pdf/pdf_muscadet.modules.php index 256f33ac534..05034406a78 100644 --- a/htdocs/fourn/commande/modules/pdf/pdf_muscadet.modules.php +++ b/htdocs/fourn/commande/modules/pdf/pdf_muscadet.modules.php @@ -176,7 +176,16 @@ class pdf_muscadet extends ModelePDFCommandesSuppliers // Initialisation document vierge $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/commande/pdf_edison.modules.php b/htdocs/includes/modules/commande/pdf_edison.modules.php index cdb03f413b7..3362eadfa22 100644 --- a/htdocs/includes/modules/commande/pdf_edison.modules.php +++ b/htdocs/includes/modules/commande/pdf_edison.modules.php @@ -124,6 +124,17 @@ class pdf_edison extends ModelePDFCommandes // Initialisation document vierge $pdf=new FPDI_Protection('P','mm',$this->format); + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/commande/pdf_einstein.modules.php b/htdocs/includes/modules/commande/pdf_einstein.modules.php index 602084f9349..d14fbb7f296 100644 --- a/htdocs/includes/modules/commande/pdf_einstein.modules.php +++ b/htdocs/includes/modules/commande/pdf_einstein.modules.php @@ -153,7 +153,16 @@ class pdf_einstein extends ModelePDFCommandes // Initialisation document vierge $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/facture/pdf_crabe.modules.php b/htdocs/includes/modules/facture/pdf_crabe.modules.php index 95a26e02b25..6092a98829b 100644 --- a/htdocs/includes/modules/facture/pdf_crabe.modules.php +++ b/htdocs/includes/modules/facture/pdf_crabe.modules.php @@ -153,7 +153,16 @@ class pdf_crabe extends ModelePDFFactures // Initialisation document vierge $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/facture/pdf_huitre.modules.php b/htdocs/includes/modules/facture/pdf_huitre.modules.php index e8906d98a47..5337eacbc13 100644 --- a/htdocs/includes/modules/facture/pdf_huitre.modules.php +++ b/htdocs/includes/modules/facture/pdf_huitre.modules.php @@ -126,7 +126,16 @@ class pdf_huitre extends ModelePDFFactures { // Initialisation facture vierge $pdf=new FPDI_Protection('P','mm','A4'); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/facture/pdf_oursin.modules.php b/htdocs/includes/modules/facture/pdf_oursin.modules.php index 456714c6c3b..e9bdbb653ee 100644 --- a/htdocs/includes/modules/facture/pdf_oursin.modules.php +++ b/htdocs/includes/modules/facture/pdf_oursin.modules.php @@ -150,7 +150,16 @@ class pdf_oursin extends ModelePDFFactures { // Initialisation facture vierge $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/fichinter/pdf_soleil.modules.php b/htdocs/includes/modules/fichinter/pdf_soleil.modules.php index 66877c39323..144202c34be 100644 --- a/htdocs/includes/modules/fichinter/pdf_soleil.modules.php +++ b/htdocs/includes/modules/fichinter/pdf_soleil.modules.php @@ -102,7 +102,16 @@ class pdf_soleil extends ModelePDFFicheinter { // Initialisation document vierge $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/propale/pdf_propale_azur.modules.php b/htdocs/includes/modules/propale/pdf_propale_azur.modules.php index d5738b28a2d..baf8b416a2b 100644 --- a/htdocs/includes/modules/propale/pdf_propale_azur.modules.php +++ b/htdocs/includes/modules/propale/pdf_propale_azur.modules.php @@ -152,7 +152,16 @@ class pdf_propale_azur extends ModelePDFPropales // Initialisation document vierge $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/propale/pdf_propale_bleu.modules.php b/htdocs/includes/modules/propale/pdf_propale_bleu.modules.php index 18b926dd3fe..f959916702d 100644 --- a/htdocs/includes/modules/propale/pdf_propale_bleu.modules.php +++ b/htdocs/includes/modules/propale/pdf_propale_bleu.modules.php @@ -117,7 +117,16 @@ class pdf_propale_bleu extends ModelePDFPropales { $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php b/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php index d6abda061a6..61e62febd2a 100644 --- a/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php +++ b/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php @@ -118,7 +118,16 @@ class pdf_propale_jaune extends ModelePDFPropales { $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->SetTitle($propale->ref); diff --git a/htdocs/includes/modules/propale/pdf_propale_rouge.modules.php b/htdocs/includes/modules/propale/pdf_propale_rouge.modules.php index 96bded7e298..33fed30fbf4 100644 --- a/htdocs/includes/modules/propale/pdf_propale_rouge.modules.php +++ b/htdocs/includes/modules/propale/pdf_propale_rouge.modules.php @@ -120,7 +120,16 @@ class pdf_propale_rouge extends ModelePDFPropales if (file_exists($dir)) { $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/propale/pdf_propale_vert.modules.php b/htdocs/includes/modules/propale/pdf_propale_vert.modules.php index 12343f1fb7e..b84395863c5 100644 --- a/htdocs/includes/modules/propale/pdf_propale_vert.modules.php +++ b/htdocs/includes/modules/propale/pdf_propale_vert.modules.php @@ -119,7 +119,16 @@ class pdf_propale_vert extends ModelePDFPropales { $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/includes/modules/rapport/pdf_paiement.class.php b/htdocs/includes/modules/rapport/pdf_paiement.class.php index 72fa039519f..6aca0be3562 100644 --- a/htdocs/includes/modules/rapport/pdf_paiement.class.php +++ b/htdocs/includes/modules/rapport/pdf_paiement.class.php @@ -181,7 +181,16 @@ class pdf_paiement $_file = $dir . "/payments-".$month."-".$year.".pdf"; $pdf = new FPDI_Protection('P','mm','A4'); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $sql = "SELECT ".$this->db->pdate("p.datep")." as dp, f.facnumber"; diff --git a/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php b/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php index a6e6d72fbd8..eef51d2d566 100644 --- a/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php +++ b/htdocs/livraison/mods/pdf/pdf_sirocco.modules.php @@ -108,7 +108,16 @@ class pdf_sirocco extends ModelePDFDeliveryOrder { $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/livraison/mods/pdf/pdf_typhon.modules.php b/htdocs/livraison/mods/pdf/pdf_typhon.modules.php index b940ce7144d..3bf05a4935f 100644 --- a/htdocs/livraison/mods/pdf/pdf_typhon.modules.php +++ b/htdocs/livraison/mods/pdf/pdf_typhon.modules.php @@ -163,7 +163,16 @@ class pdf_typhon extends ModelePDFDeliveryOrder { // Initialisation document vierge $pdf=new FPDI_Protection('P','mm',$this->format); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->AddPage(); diff --git a/htdocs/telephonie/script/facturation-impression.php b/htdocs/telephonie/script/facturation-impression.php index 06f764af970..706d2b78ea6 100644 --- a/htdocs/telephonie/script/facturation-impression.php +++ b/htdocs/telephonie/script/facturation-impression.php @@ -93,7 +93,16 @@ if ( $resql ) dolibarr_syslog("$num factures a imprimer"); $pdf = new FPDI_Protection('P','mm','A4'); - $pdf->SetProtection(array('print')); //ne permet que l'impression du document + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + $pdfrights = array('print'); // Ne permet que l'impression du document + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = ''; // Mot de passe du propriétaire, créé aléatoirement si pas défini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + $pdf->Open(); $pdf->SetMargins(10, 10, 10); $pdf->SetAutoPageBreak(1,0);