From c119e8ae5411230327efc7cda9758051eb6ce0ae Mon Sep 17 00:00:00 2001 From: yashodha Date: Thu, 20 Aug 2015 16:03:35 +0530 Subject: [PATCH] CRM-17048: Only one Invoice is available and attached to all the activities ---------------------------------------- * CRM-17048: Only one Invoice is available and attached to all the activities https://issues.civicrm.org/jira/browse/CRM-17048 --- CRM/Contribute/Form/Task/Invoice.php | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/CRM/Contribute/Form/Task/Invoice.php b/CRM/Contribute/Form/Task/Invoice.php index 11b0a6cc3b..ab7a50ebfa 100644 --- a/CRM/Contribute/Form/Task/Invoice.php +++ b/CRM/Contribute/Form/Task/Invoice.php @@ -457,12 +457,13 @@ class CRM_Contribute_Form_Task_Invoice extends CRM_Contribute_Form_Task { $tplParams['creditnote_id'] = $creditNoteId; } + $pdfFileName = "{$invoiceId}.pdf"; $sendTemplateParams = array( 'groupName' => 'msg_tpl_workflow_contribution', 'valueName' => 'contribution_invoice_receipt', 'contactId' => $contribution->contact_id, 'tplParams' => $tplParams, - 'PDFFilename' => 'Invoice.pdf', + 'PDFFilename' => $pdfFileName, ); $session = CRM_Core_Session::singleton(); $contactID = $session->get('userID'); @@ -520,7 +521,8 @@ class CRM_Contribute_Form_Task_Invoice extends CRM_Contribute_Form_Task { list($sent, $subject, $message, $html) = CRM_Core_BAO_MessageTemplate::sendTemplate($sendTemplateParams); // functions call for adding activity with attachment - $fileName = self::putFile($html); + $pdfFileName = "{$invoiceId}.pdf"; + $fileName = self::putFile($html, $pdfFileName); self::addActivities($subject, $contribution->contact_id, $fileName, $params); } elseif ($contribution->_component == 'event') { @@ -534,7 +536,8 @@ class CRM_Contribute_Form_Task_Invoice extends CRM_Contribute_Form_Task { list($sent, $subject, $message, $html) = CRM_Core_BAO_MessageTemplate::sendTemplate($sendTemplateParams); // functions call for adding activity with attachment - $fileName = self::putFile($html); + $pdfFileName = "{$invoiceId}.pdf"; + $fileName = self::putFile($html, $pdfFileName); self::addActivities($subject, $contribution->contact_id, $fileName, $params); } @@ -550,13 +553,14 @@ class CRM_Contribute_Form_Task_Invoice extends CRM_Contribute_Form_Task { return $html; } else { - CRM_Utils_PDF_Utils::html2pdf($messageInvoice, 'Invoice.pdf', FALSE, array( + $pdfFileName = "{$invoiceId}.pdf"; + CRM_Utils_PDF_Utils::html2pdf($messageInvoice, $pdfFileName, FALSE, array( 'margin_top' => 10, 'margin_left' => 65, 'metric' => 'px', )); // functions call for adding activity with attachment - $fileName = self::putFile($html); + $fileName = self::putFile($html, $pdfFileName); self::addActivities($subject, $contactIds, $fileName, $params); CRM_Utils_System::civiExit(); @@ -634,14 +638,14 @@ class CRM_Contribute_Form_Task_Invoice extends CRM_Contribute_Form_Task { * @return string * Name of file which is in pdf format */ - static public function putFile($html) { + static public function putFile($html, $name = 'Invoice.pdf') { require_once "vendor/dompdf/dompdf/dompdf_config.inc.php"; $doc = new DOMPDF(); $doc->load_html($html); $doc->render(); $html = $doc->output(); $config = CRM_Core_Config::singleton(); - $fileName = $config->uploadDir . 'Invoice.pdf'; + $fileName = $config->uploadDir . $name; file_put_contents($fileName, $html); return $fileName; } -- 2.25.1