* @param bool $isQtyZero
* @param bool $relatedEntity
*
- * @param bool $invoice
* @return array
* Array of line items
*/
- public static function getLineItems($entityId, $entity = 'participant', $isQuick = FALSE, $isQtyZero = TRUE, $relatedEntity = FALSE, $invoice = FALSE) {
+ public static function getLineItems($entityId, $entity = 'participant', $isQuick = FALSE, $isQtyZero = TRUE, $relatedEntity = FALSE) {
$whereClause = $fromClause = NULL;
$selectClause = "
SELECT li.id,
LEFT JOIN civicrm_line_item li ON ({$condition})
LEFT JOIN civicrm_price_field_value pfv ON ( pfv.id = li.price_field_value_id )
LEFT JOIN civicrm_price_field pf ON (pf.id = li.price_field_id )";
- $whereClause = "
- WHERE %2.id = %1";
-
- // CRM-16250 get additional participant's fee selection details only for invoice PDF (if any)
- if ($entity == 'participant' && $invoice) {
- $additionalParticipantIDs = CRM_Event_BAO_Participant::getAdditionalParticipantIds($entityId);
- if (!empty($additionalParticipantIDs)) {
- $whereClause = "WHERE %2.id IN (%1, " . implode(', ', $additionalParticipantIDs) . ")";
- }
- }
-
+ $whereClause = " WHERE %2.id = %1";
$orderByClause = " ORDER BY pf.weight, pfv.weight";
if ($isQuick) {
$values[$oid] = [
'price_field_id' => $fid,
'price_field_value_id' => $oid,
- 'label' => CRM_Utils_Array::value('label', $options[$oid]),
+ 'label' => $options[$oid]['label'] ?? NULL,
'field_title' => $fieldTitle,
- 'description' => CRM_Utils_Array::value('description', $options[$oid]),
+ 'description' => $options[$oid]['description'] ?? NULL,
'qty' => $qty,
'unit_price' => $price,
'line_total' => $qty * $price,
'participant_count' => $qty * $participantsPerField,
- 'max_value' => CRM_Utils_Array::value('max_value', $options[$oid]),
- 'membership_type_id' => CRM_Utils_Array::value('membership_type_id', $options[$oid]),
- 'membership_num_terms' => CRM_Utils_Array::value('membership_num_terms', $options[$oid]),
- 'auto_renew' => CRM_Utils_Array::value('auto_renew', $options[$oid]),
+ 'max_value' => $options[$oid]['max_value'] ?? NULL,
+ 'membership_type_id' => $options[$oid]['membership_type_id'] ?? NULL,
+ 'membership_num_terms' => $options[$oid]['membership_num_terms'] ?? NULL,
+ 'auto_renew' => $options[$oid]['auto_renew'] ?? NULL,
'html_type' => $fields['html_type'],
- 'financial_type_id' => CRM_Utils_Array::value('financial_type_id', $options[$oid]),
+ 'financial_type_id' => $options[$oid]['financial_type_id'] ?? NULL,
'tax_amount' => CRM_Utils_Array::value('tax_amount', $options[$oid], 0),
- 'non_deductible_amount' => CRM_Utils_Array::value('non_deductible_amount', $options[$oid]),
+ 'non_deductible_amount' => $options[$oid]['non_deductible_amount'] ?? NULL,
];
if ($values[$oid]['membership_type_id'] && empty($values[$oid]['auto_renew'])) {
* These are per the way the form processes them - ie
* ['price_1' => 1, 'price_2' => 8]
* This would mean price field id 1, option 1 (or 1 unit if using is_enter_qty).
- * @param float|NULL $overrideAmount
+ * @param float|null $overrideAmount
* Optional override of the amount.
*
* @param int|null $financialTypeID