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);