*
* @param int $contributionID
*
- * @return string
+ * @return string|null
*/
- public static function getInvoiceNumber($contributionID) {
- if ($invoicePrefix = self::checkContributeSettings('invoice_prefix')) {
- return $invoicePrefix . $contributionID;
- }
-
- return NULL;
+ public static function getInvoiceNumber(int $contributionID): ?string {
+ $invoicePrefix = Civi::settings()->get('invoice_prefix');
+ return $invoicePrefix ? $invoicePrefix . $contributionID : NULL;
}
/**
);
$prefixValue = Civi::settings()->get('contribution_invoice_settings');
$invoicing = $prefixValue['invoicing'] ?? NULL;
- if (!empty($taxAmt) && (isset($invoicing) && isset($prefixValue['is_email_pdf']))) {
+ if (!empty($taxAmt) && (isset($invoicing) && Civi::settings()->get('invoice_is_email_pdf'))) {
$sendTemplateParams['isEmailPdf'] = TRUE;
$sendTemplateParams['contributionId'] = $contributionId;
}
*
* @throws \CRM_Core_Exception
*/
- public function testInvoiceSentOnIPNPaymentSuccess() {
+ public function testInvoiceSentOnIPNPaymentSuccess(): void {
$this->enableTaxAndInvoicing();
$pendingStatusID = CRM_Core_PseudoConstant::getKey('CRM_Contribute_BAO_Contribution', 'contribution_status_id', 'Pending');
* Enable Tax and Invoicing
*
* @param array $params
- *
- * @return \Civi\Core\SettingsBag
*/
- protected function enableTaxAndInvoicing($params = []) {
+ protected function enableTaxAndInvoicing(array $params = []): void {
// Enable component contribute setting
$contributeSetting = array_merge($params,
[
'invoicing' => 1,
'invoice_prefix' => 'INV_',
- 'due_date' => 10,
- 'due_date_period' => 'days',
- 'notes' => '',
- 'is_email_pdf' => 1,
+ 'invoice_due_date' => 10,
+ 'invoice_due_date_period' => 'days',
+ 'invoice_notes' => '',
+ 'invoice_is_email_pdf' => 1,
'tax_term' => 'Sales Tax',
'tax_display_settings' => 'Inclusive',
]
);
- return Civi::settings()->set('contribution_invoice_settings', $contributeSetting);
+ foreach ($contributeSetting as $setting => $value) {
+ Civi::settings()->set($setting, $value);
+ }
}
/**
/**
* Setup for test.
- *
- * @throws \CiviCRM_API3_Exception
*/
public function setUp(): void {
parent::setUp();
* @param int $version
*
* @dataProvider versionThreeAndFour
- * @throws \CRM_Core_Exception
*/
public function testGetBasicContributionPage(int $version): void {
$this->_apiversion = $version;
/**
* Test get with amount as a parameter.
- *
- * @throws \CRM_Core_Exception
*/
public function testGetContributionPageByAmount(): void {
$createResult = $this->callAPISuccess($this->_entity, 'create', $this->params);
* Contribution total = 3723.05
* made up of tax 337.55
* non tax 3385.5
+ *
* @param string $thousandSeparator
* punctuation used to refer to thousands.
*
- * @dataProvider getThousandSeparators
+ * @throws \API_Exception
* @throws \CRM_Core_Exception
+ * @dataProvider getThousandSeparators
*/
public function testSubmitContributionPageWithPriceSetQuantity(string $thousandSeparator): void {
$this->setCurrencySeparators($thousandSeparator);