Skip to content

Commit

Permalink
Merge pull request #19480 from eileenmcnaughton/pdf
Browse files Browse the repository at this point in the history
[REF] Prelminary tidy up to support fix for dev/core#2344
  • Loading branch information
eileenmcnaughton authored Feb 1, 2021
2 parents 3eb2092 + 3017ca7 commit 28fc1da
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 18 deletions.
8 changes: 4 additions & 4 deletions CRM/Contribute/Form/Task/PDFLetterCommon.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public static function postProcess(&$form, $formValues = NULL) {
if (empty($formValues)) {
$formValues = $form->controller->exportValues($form->getName());
}
list($formValues, $categories, $html_message, $messageToken, $returnProperties) = self::processMessageTemplate($formValues);
[$formValues, $categories, $html_message, $messageToken, $returnProperties] = self::processMessageTemplate($formValues);
$isPDF = FALSE;
$emailParams = [];
if (!empty($formValues['email_options'])) {
Expand Down Expand Up @@ -82,7 +82,7 @@ public static function postProcess(&$form, $formValues = NULL) {
//@todo - comment on what is stored there
$contributionIDs = $form->getVar('_contributionContactIds');
}
list($contributions, $contacts) = self::buildContributionArray($groupBy, $contributionIDs, $returnProperties, $skipOnHold, $skipDeceased, $messageToken, $task, $separator, $form->_includesSoftCredits);
[$contributions, $contacts] = self::buildContributionArray($groupBy, $contributionIDs, $returnProperties, $skipOnHold, $skipDeceased, $messageToken, $task, $separator, $form->_includesSoftCredits);
$html = [];
$contactHtml = $emailedHtml = [];
foreach ($contributions as $contributionId => $contribution) {
Expand Down Expand Up @@ -135,7 +135,7 @@ public static function postProcess(&$form, $formValues = NULL) {
if (!empty($html)) {
$type = $formValues['document_type'];

if ($type == 'pdf') {
if ($type === 'pdf') {
CRM_Utils_PDF_Utils::html2pdf($html, "CiviLetter.pdf", FALSE, $formValues);
}
else {
Expand Down Expand Up @@ -265,7 +265,7 @@ public static function buildContributionArray($groupBy, $contributionIDs, $retur

if ($isIncludeSoftCredits) {
//@todo find out why this happens & add comments
list($contactID) = explode('-', $item);
[$contactID] = explode('-', $item);
$contactID = (int) $contactID;
}
else {
Expand Down
9 changes: 5 additions & 4 deletions CRM/Utils/Token.php
Original file line number Diff line number Diff line change
Expand Up @@ -1106,7 +1106,7 @@ public static function getTokens($string) {

if ($matches[1]) {
foreach ($matches[1] as $token) {
list($type, $name) = preg_split('/\./', $token, 2);
[$type, $name] = preg_split('/\./', $token, 2);
if ($name && $type) {
if (!isset($tokens[$type])) {
$tokens[$type] = [];
Expand Down Expand Up @@ -1135,7 +1135,7 @@ public static function getReturnProperties(&$string) {
);
if ($matches[1]) {
foreach ($matches[1] as $token) {
list($type, $name) = preg_split('/\./', $token, 2);
[$type, $name] = preg_split('/\./', $token, 2);
if ($name) {
$returnProperties["{$name}"] = 1;
}
Expand Down Expand Up @@ -1407,7 +1407,7 @@ public static function replaceGreetingTokens(&$tokenString, $contactDetails = NU
);
// Prepare variables for calling replaceHookTokens
$categories = array_keys($greetingTokens);
list($contact) = $greetingDetails;
[$contact] = $greetingDetails;
// Replace tokens defined in Hooks.
$tokenString = CRM_Utils_Token::replaceHookTokens($tokenString, $contact[$contactId], $categories);
}
Expand Down Expand Up @@ -1532,7 +1532,7 @@ function ($matches) use ($escapeSmarty) {
public static function getUserTokenReplacement($token, $escapeSmarty = FALSE) {
$value = '';

list($objectName, $objectValue) = explode('-', $token, 2);
[$objectName, $objectValue] = explode('-', $token, 2);

switch ($objectName) {
case 'permission':
Expand Down Expand Up @@ -1792,6 +1792,7 @@ public static function getMembershipTokenReplacement($entity, $token, $membershi
* @param bool $escapeSmarty
*
* @return mixed|string
* @throws \CRM_Core_Exception
*/
public static function getContributionTokenReplacement($token, &$contribution, $html = FALSE, $escapeSmarty = FALSE) {
self::_buildContributionTokens();
Expand Down
4 changes: 2 additions & 2 deletions tests/phpunit/CRM/Contribute/Form/ContributionTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -1161,7 +1161,7 @@ public function testSubmitWithOutSaleTax() {
*
* @throws \Exception
*/
public function testReSubmitSaleTax($thousandSeparator) {
public function testReSubmitSaleTax($thousandSeparator): void {
$this->setCurrencySeparators($thousandSeparator);
$this->enableTaxAndInvoicing();
$this->addTaxAccountToFinancialType($this->_financialTypeId);
Expand Down Expand Up @@ -1205,7 +1205,7 @@ public function testReSubmitSaleTax($thousandSeparator) {
$mut->checkMailLog($strings);
$this->callAPISuccessGetCount('FinancialTrxn', [], 3);
$items = $this->callAPISuccess('FinancialItem', 'get', ['sequential' => 1])['values'];
$this->assertEquals(2, count($items));
$this->assertCount(2, $items);
$this->assertEquals('Contribution Amount', $items[0]['description']);
$this->assertEquals('Sales Tax', $items[1]['description']);

Expand Down
27 changes: 19 additions & 8 deletions tests/phpunit/CRM/Contribute/Form/Task/PDFLetterCommonTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class CRM_Contribute_Form_Task_PDFLetterCommonTest extends CiviUnitTestCase {

protected $_docTypes = NULL;

protected $_contactIds = NULL;
protected $_contactIds;

/**
* Count how many times the hookTokens is called.
Expand All @@ -41,6 +41,8 @@ protected function setUp() {

/**
* Clean up after each test.
*
* @throws \CRM_Core_Exception
*/
public function tearDown() {
$this->quickCleanUpFinancialEntities();
Expand All @@ -50,8 +52,10 @@ public function tearDown() {

/**
* Test the buildContributionArray function.
*
* @throws \CRM_Core_Exception
*/
public function testBuildContributionArray() {
public function testBuildContributionArray(): void {
$this->_individualId = $this->individualCreate();

$customGroup = $this->callAPISuccess('CustomGroup', 'create', [
Expand All @@ -69,7 +73,7 @@ public function testBuildContributionArray() {
];
$customField = $this->callAPISuccess('CustomField', 'create', $params);
$customFieldKey = 'custom_' . $customField['id'];
$campaignTitle = 'Test Campaign ' . substr(sha1(rand()), 0, 7);
$campaignTitle = 'Test Campaign ';

$params = [
'contact_id' => $this->_individualId,
Expand All @@ -94,7 +98,7 @@ public function testBuildContributionArray() {
],
];

list($contributions, $contacts) = CRM_Contribute_Form_Task_PDFLetterCommon::buildContributionArray('contact_id', $contributionIDs, $returnProperties, TRUE, TRUE, $messageToken, 'test', '**', FALSE);
[$contributions, $contacts] = CRM_Contribute_Form_Task_PDFLetterCommon::buildContributionArray('contact_id', $contributionIDs, $returnProperties, TRUE, TRUE, $messageToken, 'test', '**', FALSE);

$this->assertEquals('Anthony', $contacts[$this->_individualId]['first_name']);
$this->assertEquals('emo', $contacts[$this->_individualId]['favourite_emoticon']);
Expand Down Expand Up @@ -126,8 +130,11 @@ public function hookTokenValues(&$details, $contactIDs, $jobID, $tokens, $classN
/**
* Test contribution token replacement in
* html returned by postProcess function.
*
* @throws \CiviCRM_API3_Exception
* @throws \CRM_Core_Exception
*/
public function testPostProcess() {
public function testPostProcess(): void {
$this->createLoggedInUser();
$this->_individualId = $this->individualCreate();
foreach (['docx', 'odt'] as $docType) {
Expand Down Expand Up @@ -171,10 +178,14 @@ public function testPostProcess() {
/**
* Test assignment of variables when using the group by function.
*
* We are looking to see that the contribution aggregate and contributions arrays reflect the most
* recent contact rather than a total aggregate, since we are using group by.
* We are looking to see that the contribution aggregate and contributions
* arrays reflect the most recent contact rather than a total aggregate,
* since we are using group by.
*
* @throws \CiviCRM_API3_Exception
* @throws \CRM_Core_Exception
*/
public function testPostProcessGroupByContact() {
public function testPostProcessGroupByContact(): void {
$this->createLoggedInUser();
$this->hookClass->setHook('civicrm_tokenValues', [$this, 'hook_aggregateTokenValues']);
$this->hookClass->setHook('civicrm_tokens', [$this, 'hook_tokens']);
Expand Down

0 comments on commit 28fc1da

Please sign in to comment.