Merge pull request #5214 from jitendrapurohit/CRM-15934changes
[civicrm-core.git] / CRM / Contribute / BAO / Contribution.php
index 8e17252c2b93fcb67d7059facec2f1d0ff87bdb3..76accef4136f25088da787ae89edc6c19076738e 100644 (file)
@@ -23,7 +23,7 @@
  | GNU Affero General Public License or the licensing of CiviCRM,     |
  | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
  +--------------------------------------------------------------------+
-*/
+ */
 
 /**
  *
@@ -38,7 +38,6 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    * Static field for all the contribution information that we can potentially import
    *
    * @var array
-   * @static
    */
   static $_importableFields = NULL;
 
@@ -46,7 +45,6 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    * Static field for all the contribution information that we can potentially export
    *
    * @var array
-   * @static
    */
   static $_exportableFields = NULL;
 
@@ -66,11 +64,17 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    */
   public $_component = NULL;
 
-  /*
-   * construct method
+  /**
+   * Possibly obsolete variable.
+   *
+   * If you use it please explain why it is set in the create function here.
+   *
+   * @var string
    */
+  public $trxn_result_code;
+
   /**
-   * Class constructor
+   * Class constructor.
    *
    * @return \CRM_Contribute_DAO_Contribution
    */
@@ -81,7 +85,7 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
   }
 
   /**
-   * Takes an associative array and creates a contribution object
+   * Takes an associative array and creates a contribution object.
    *
    * the function extract all the params it needs to initialize the create a
    * contribution object. the params array could contain additional unused name/value
@@ -92,12 +96,11 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    * @param array $ids
    *   The array that holds all the db ids.
    *
-   * @return CRM_Contribute_BAO_Contribution
-   * @static
+   * @return CRM_Contribute_BAO_Contribution|void
    */
   public static function add(&$params, $ids = array()) {
     if (empty($params)) {
-      return;
+      return NULL;
     }
     //per http://wiki.civicrm.org/confluence/display/CRM/Database+layer we are moving away from $ids array
     $contributionID = CRM_Utils_Array::value('contribution', $ids, CRM_Utils_Array::value('id', $params));
@@ -202,7 +205,7 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
   }
 
   /**
-   * Get defaults for new entity
+   * Get defaults for new entity.
    * @return array
    */
   public static function getDefaults() {
@@ -226,7 +229,6 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    *   The array that holds all the db ids.
    *
    * @return CRM_Contribute_BAO_Contribution|null the found object or null
-   * @static
    */
   public static function &getValues($params, &$values, &$ids) {
     if (empty($params)) {
@@ -248,9 +250,13 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
   }
 
   /**
-   * @param array $params
+   * Calculate net_amount & fee_amount if they are not set.
    *
-   * @return mixed
+   * Net amount should be total - fee.
+   * This should only be called for new contributions.
+   *
+   * @param array $params
+   *   Params for a new contribution before they are saved.
    */
   public static function calculateMissingAmountParams(&$params) {
     if (!isset($params['fee_amount'])) {
@@ -290,7 +296,7 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
   }
 
   /**
-   * Takes an associative array and creates a contribution object
+   * Takes an associative array and creates a contribution object.
    *
    * @param array $params
    *   (reference ) an assoc array of name/value pairs.
@@ -298,7 +304,6 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    *   The array that holds all the db ids.
    *
    * @return CRM_Contribute_BAO_Contribution
-   * @static
    */
   public static function create(&$params, $ids = array()) {
     $dateFields = array('receive_date', 'cancel_date', 'receipt_date', 'thankyou_date');
@@ -400,7 +405,11 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
       $softParams['pcp_roll_nickname'] = CRM_Utils_Array::value('pcp_roll_nickname', $pcp);
       $softParams['pcp_personal_note'] = CRM_Utils_Array::value('pcp_personal_note', $pcp);
       $softParams['soft_credit_type_id'] = CRM_Core_OptionGroup::getValue('soft_credit_type', 'pcp', 'name');
-      CRM_Contribute_BAO_ContributionSoft::add($softParams);
+      $contributionSoft = CRM_Contribute_BAO_ContributionSoft::add($softParams);
+      //Send notification to owner for PCP
+      if ($contributionSoft->pcp_id) {
+        CRM_Contribute_Form_Contribution_Confirm::pcpNotifyOwner($contribution, $contributionSoft);
+      }
     }
     if (isset($params['soft_credit'])) {
       $softParams = $params['soft_credit'];
@@ -488,7 +497,6 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    *   True if we want to resolve the values in the reverse direction (value -> name).
    *
    * @return void
-   * @static
    */
   public static function resolveDefaults(&$defaults, $reverse = FALSE) {
     self::lookupValue($defaults, 'financial_type', CRM_Contribute_PseudoConstant::financialType(), $reverse);
@@ -498,12 +506,18 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
   }
 
   /**
-   * convert associative array names to values
-   * and vice-versa.
+   * Convert associative array names to values and vice-versa.
    *
    * This function is used by both the web form layer and the api. Note that
    * the api needs the name => value conversion, also the view layer typically
    * requires value => name conversion
+   *
+   * @param array $defaults
+   * @param string $property
+   * @param array $lookup
+   * @param bool $reverse
+   *
+   * @return bool
    */
   public static function lookupValue(&$defaults, $property, &$lookup, $reverse) {
     $id = $property . '_id';
@@ -527,10 +541,9 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
   }
 
   /**
-   * Takes a bunch of params that are needed to match certain criteria and
-   * retrieves the relevant objects. We'll tweak this function to be more
-   * full featured over a period of time. This is the inverse function of
-   * create.  It also stores all the retrieved values in the default array
+   * Retrieve DB object based on input parameters.
+   *
+   * It also stores all the retrieved values in the default array.
    *
    * @param array $params
    *   (reference ) an assoc array of name/value pairs.
@@ -541,7 +554,6 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    *   (reference) the array that holds all the db ids.
    *
    * @return CRM_Contribute_BAO_Contribution
-   * @static
    */
   public static function retrieve(&$params, &$defaults, &$ids) {
     $contribution = CRM_Contribute_BAO_Contribution::getValues($params, $defaults, $ids);
@@ -549,7 +561,7 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
   }
 
   /**
-   * Combine all the importable fields from the lower levels object
+   * Combine all the importable fields from the lower levels object.
    *
    * The ordering is important, since currently we do not have a weight
    * scheme. Adding weight is super important and should be done in the
@@ -560,7 +572,6 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
    *
    * @return array
    *   array of importable Fields
-   * @static
    */
   public static function &importableFields($contactType = 'Individual', $status = TRUE) {
     if (!self::$_importableFields) {
@@ -648,13 +659,21 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
         ),
       );
 
+      $contributionPage = array(
+        'contribution_page' => array(
+          'title' => ts('Contribution Page'),
+          'name' => 'contribution_page',
+          'where' => 'civicrm_contribution_page.title',
+          'data_type' => CRM_Utils_Type::T_STRING,
+        ),
+      );
+
       $contributionNote = array(
-        'contribution_note' =>
-          array(
-            'title' => ts('Contribution Note'),
-            'name' => 'contribution_note',
-            'data_type' => CRM_Utils_Type::T_TEXT,
-          ),
+        'contribution_note' => array(
+          'title' => ts('Contribution Note'),
+          'name' => 'contribution_note',
+          'data_type' => CRM_Utils_Type::T_TEXT,
+        ),
       );
 
       $contributionRecurId = array(
@@ -699,7 +718,7 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
         ),
       );
 
-      $fields = array_merge($impFields, $typeField, $contributionStatus, $optionField, $expFieldProduct,
+      $fields = array_merge($impFields, $typeField, $contributionStatus, $contributionPage, $optionField, $expFieldProduct,
         $expFieldsContrib, $contributionNote, $contributionRecurId, $extraFields, $softCreditFields, $financialAccount,
         CRM_Core_BAO_CustomField::getFieldsForImport('Contribution')
       );
@@ -767,14 +786,12 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
   }
 
   /**
-   * Delete the indirect records associated with this contribution first
+   * Delete the indirect records associated with this contribution first.
    *
    * @param int $id
    *
    * @return mixed|null
    *   $results no of deleted Contribution on success, false otherwise
-   * @access public
-   * @static
    */
   public static function deleteContribution($id) {
     CRM_Utils_Hook::pre('delete', 'Contribution', $id, CRM_Core_DAO::$_nullArray);
@@ -841,7 +858,7 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
   }
 
   /**
-   * Check if there is a contribution with the same trxn_id or invoice_id
+   * Check if there is a contribution with the same trxn_id or invoice_id.
    *
    * @param array $input
    *   An assoc array of name/value pairs.
@@ -849,9 +866,8 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
    *   (reference) store ids of duplicate contribs.
    * @param int $id
    *
-   * @return boolean
+   * @return bool
    *   true if duplicate, false otherwise
-   * @static
    */
   public static function checkDuplicate($input, &$duplicates, $id = NULL) {
     if (!$id) {
@@ -894,7 +910,7 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
   }
 
   /**
-   * Takes an associative array and creates a contribution_product object
+   * Takes an associative array and creates a contribution_product object.
    *
    * the function extract all the params it needs to initialize the create a
    * contribution_product object. the params array could contain additional unused name/value
@@ -904,7 +920,6 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
    *   (reference) an assoc array of name/value pairs.
    *
    * @return CRM_Contribute_DAO_ContributionProduct
-   * @static
    */
   public static function addPremium(&$params) {
     $contributionProduct = new CRM_Contribute_DAO_ContributionProduct();
@@ -913,7 +928,7 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
   }
 
   /**
-   * Get list of contribution fields for profile
+   * Get list of contribution fields for profile.
    * For now we only allow custom contribution fields to be in
    * profile
    *
@@ -922,7 +937,6 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
    *
    * @return array
    *   the list of contribution fields
-   * @static
    */
   public static function getContributionFields($addExtraFields = TRUE) {
     $contributionFields = CRM_Contribute_DAO_Contribution::export();
@@ -949,9 +963,7 @@ INNER JOIN  civicrm_contact contact ON ( contact.id = civicrm_contribution.conta
   }
 
   /**
-   * Add extra fields specific to contribtion
-   *
-   * @static
+   * Add extra fields specific to contribution.
    */
   public static function getSpecialContributionFields() {
     $extraFields = array(
@@ -1013,7 +1025,7 @@ GROUP BY p.id
   }
 
   /**
-   * Get list of contribution In Honor of contact Ids
+   * Get list of contribution In Honor of contact Ids.
    *
    * @param int $honorId
    *   In Honor of Contact ID.
@@ -1021,7 +1033,6 @@ GROUP BY p.id
    * @return array
    *   list of contribution fields
    *
-   * @static
    */
   public static function getHonorContacts($honorId) {
     $params = array();
@@ -1052,14 +1063,13 @@ GROUP BY p.id
   }
 
   /**
-   * Get the sort name of a contact for a particular contribution
+   * Get the sort name of a contact for a particular contribution.
    *
    * @param int $id
    *   Id of the contribution.
    *
    * @return null|string
    *   sort name of the contact if found
-   * @static
    */
   public static function sortName($id) {
     $id = CRM_Utils_Type::escape($id, 'Integer');
@@ -1160,7 +1170,6 @@ WHERE  civicrm_contribution.contact_id = civicrm_contact.id
    *
    * @return array
    *   contribution id if success else NULL
-   * @static
    */
   public static function checkDuplicateIds($params) {
     $dao = new CRM_Contribute_DAO_Contribution();
@@ -1184,7 +1193,7 @@ WHERE  civicrm_contribution.contact_id = civicrm_contact.id
   }
 
   /**
-   * Get the contribution details for component export
+   * Get the contribution details for component export.
    *
    * @param int $exportMode
    *   Export mode.
@@ -1194,7 +1203,6 @@ WHERE  civicrm_contribution.contact_id = civicrm_contact.id
    * @return array
    *   associated array
    *
-   * @static
    */
   public static function getContributionDetails($exportMode, $componentIds) {
     $paymentDetails = array();
@@ -1257,7 +1265,6 @@ LEFT JOIN civicrm_option_value contribution_status ON (civicrm_contribution.cont
    *
    * @return int
    *   address id
-   * @static
    */
   public static function createAddress(&$params, $billingLocationTypeID) {
     $billingFields = array(
@@ -1288,12 +1295,11 @@ LEFT JOIN civicrm_option_value contribution_status ON (civicrm_contribution.cont
   }
 
   /**
-   * Delete billing address record related contribution
+   * Delete billing address record related contribution.
    *
    * @param int $contributionId
    * @param int $contactId
    *
-   * @static
    */
   public static function deleteAddress($contributionId = NULL, $contactId = NULL) {
     $clauses = array();
@@ -1340,7 +1346,6 @@ WHERE      $condition
    *
    * @return int
    *   pending contribution id.
-   * @static
    */
   public static function checkOnlinePendingContribution($componentId, $componentName) {
     $contributionId = NULL;
@@ -1395,6 +1400,12 @@ LEFT JOIN  civicrm_contribution contribution ON ( componentPayment.contribution_
 
   /**
    * Update contribution as well as related objects.
+   *
+   * @param array $params
+   * @param bool $processContributionObject
+   *
+   * @return array
+   * @throws \Exception
    */
   public static function transitionComponents($params, $processContributionObject = FALSE) {
     // get minimum required values.
@@ -1596,7 +1607,7 @@ LEFT JOIN  civicrm_contribution contribution ON ( componentPayment.contribution_
               WHERE     membership_id=$membership->id
               ORDER BY  id DESC
               LIMIT     1;";
-            $dao = new CRM_Core_DAO;
+            $dao = new CRM_Core_DAO();
             $dao->query($sql);
             if ($dao->fetch()) {
               if (!empty($dao->membership_type_id)) {
@@ -1751,6 +1762,10 @@ LEFT JOIN  civicrm_contribution contribution ON ( componentPayment.contribution_
 
   /**
    * Returns all contribution related object ids.
+   *
+   * @param $contributionId
+   *
+   * @return array
    */
   public static function getComponentDetails($contributionId) {
     $componentDetails = $pledgePayment = array();
@@ -1761,6 +1776,7 @@ LEFT JOIN  civicrm_contribution contribution ON ( componentPayment.contribution_
     $query = "
       SELECT    c.id                 as contribution_id,
                 c.contact_id         as contact_id,
+                c.contribution_recur_id,
                 mp.membership_id     as membership_id,
                 m.membership_type_id as membership_type_id,
                 pp.participant_id    as participant_id,
@@ -1796,6 +1812,9 @@ LEFT JOIN  civicrm_contribution contribution ON ( componentPayment.contribution_
       if ($dao->pledge_payment_id) {
         $pledgePayment[] = $dao->pledge_payment_id;
       }
+      if ($dao->contribution_recur_id) {
+        $componentDetails['contributionRecur'] = $dao->contribution_recur_id;
+      }
     }
 
     if ($pledgePayment) {
@@ -1840,7 +1859,7 @@ LEFT JOIN  civicrm_contribution contribution ON ( componentPayment.contribution_
   }
 
   /**
-   * Get individual id for onbehalf contribution
+   * Get individual id for onbehalf contribution.
    *
    * @param int $contributionId
    *   Contribution id.
@@ -1916,7 +1935,6 @@ INNER JOIN civicrm_activity ON civicrm_activity_contact.activity_id = civicrm_ac
 
   /**
    * @return array
-   * @static
    */
   public static function getContributionDates() {
     $config = CRM_Core_Config::singleton();
@@ -1949,7 +1967,7 @@ INNER JOIN civicrm_activity ON civicrm_activity_contact.activity_id = civicrm_ac
   }
 
   /**
-   * Load objects relations to contribution object
+   * Load objects relations to contribution object.
    * Objects are stored in the $_relatedObjects property
    * In the first instance we are just moving functionality from BASEIpn -
    * @see http://issues.civicrm.org/jira/browse/CRM-9996
@@ -2478,7 +2496,6 @@ WHERE  contribution_id = %1 ";
       $values['financial_type_id'] = $this->financial_type_id;
     }
 
-
     $template->assign('trxn_id', $this->trxn_id);
     $template->assign('receive_date',
       CRM_Utils_Date::mysqlToIso($this->receive_date)
@@ -2587,8 +2604,7 @@ WHERE  contribution_id = %1 ";
    *
    * @param bool $isNotCancelled
    *
-   * @return boolean
-   * @static
+   * @return bool
    */
   public static function isCancelSubscriptionSupported($contributionId, $isNotCancelled = TRUE) {
     $cacheKeyString = "$contributionId";
@@ -2613,14 +2629,13 @@ WHERE  contribution_id = %1 ";
   }
 
   /**
-   * Check whether subscription is already cancelled
+   * Check whether subscription is already cancelled.
    *
    * @param int $contributionId
    *   Contribution id.
    *
    * @return string
    *   contribution status
-   * @static
    */
   public static function isSubscriptionCancelled($contributionId) {
     $sql = "
@@ -2638,7 +2653,7 @@ WHERE  contribution_id = %1 ";
   }
 
   /**
-   * Create all financial accounts entry
+   * Create all financial accounts entry.
    *
    * @param array $params
    *   Contribution object, line item array and params for trxn.
@@ -2647,7 +2662,6 @@ WHERE  contribution_id = %1 ";
    * @param array $financialTrxnValues
    *
    * @return null|object
-   * @static
    */
   public static function recordFinancialAccounts(&$params, $financialTrxnValues = NULL) {
     $skipRecords = $update = $return = $isRelatedId = FALSE;
@@ -2795,7 +2809,6 @@ WHERE  contribution_id = %1 ";
         $params['trxnParams']['trxn_id'] = $params['prevContribution']->trxn_id;
         $params['trxnParams']['status_id'] = $params['prevContribution']->contribution_status_id;
 
-
         if (!(($params['prevContribution']->contribution_status_id == array_search('Pending', $contributionStatuses)
             || $params['prevContribution']->contribution_status_id == array_search('In Progress', $contributionStatuses))
           && $params['contribution']->contribution_status_id == array_search('Completed', $contributionStatuses))
@@ -2834,6 +2847,7 @@ WHERE  contribution_id = %1 ";
 
         //Update contribution status
         $params['trxnParams']['status_id'] = $params['contribution']->contribution_status_id;
+        $params['trxnParams']['trxn_id'] = $params['contribution']->trxn_id;
         if (!empty($params['contribution_status_id']) &&
           $params['prevContribution']->contribution_status_id != $params['contribution']->contribution_status_id
         ) {
@@ -2939,7 +2953,7 @@ WHERE  contribution_id = %1 ";
   }
 
   /**
-   * Update all financial accounts entry
+   * Update all financial accounts entry.
    *
    * @param array $params
    *   Contribution object, line item array and params for trxn.
@@ -2949,7 +2963,6 @@ WHERE  contribution_id = %1 ";
    *
    * @param null $skipTrxn
    *
-   * @static
    */
   public static function updateFinancialAccounts(&$params, $context = NULL, $skipTrxn = NULL) {
     $itemAmount = $trxnID = NULL;
@@ -3112,7 +3125,7 @@ WHERE  contribution_id = %1 ";
   }
 
   /**
-   * Check status validation on update of a contribution
+   * Check status validation on update of a contribution.
    *
    * @param array $values
    *   Previous form values before submit.
@@ -3124,7 +3137,6 @@ WHERE  contribution_id = %1 ";
    *   List of errors.
    *
    * @return bool
-   * @static
    */
   public static function checkStatusValidation($values, &$fields, &$errors) {
     if (CRM_Utils_System::isNull($values) && !empty($fields['id'])) {
@@ -3151,14 +3163,13 @@ WHERE  contribution_id = %1 ";
   }
 
   /**
-   * Delete contribution of contact
+   * Delete contribution of contact.
    *
    * CRM-12155
    *
    * @param int $contactId
    *   Contact id.
    *
-   * @static
    */
   public static function deleteContactContribution($contactId) {
     $contribution = new CRM_Contribute_DAO_Contribution();
@@ -3174,12 +3185,10 @@ WHERE  contribution_id = %1 ";
    * @see CRM_Core_DAO::buildOptions
    *
    * @param string $fieldName
-   * @param string $context
-   *   @see CRM_Core_DAO::buildOptionsContext.
-   * @param array $props
-   *   whatever is known about this dao object.
+   * @param string $context see CRM_Core_DAO::buildOptionsContext.
+   * @param array $props  whatever is known about this dao object.
    *
-   * @return Array|bool
+   * @return array|bool
    */
   public static function buildOptions($fieldName, $context = NULL, $props = array()) {
     $className = __CLASS__;
@@ -3210,7 +3219,7 @@ WHERE  contribution_id = %1 ";
   }
 
   /**
-   * Validate financial type
+   * Validate financial type.
    *
    * CRM-13231
    *
@@ -3220,7 +3229,6 @@ WHERE  contribution_id = %1 ";
    * @param string $relationName
    *
    * @return array|bool
-   * @static
    */
   public static function validateFinancialType($financialTypeId, $relationName = 'Expense Account is') {
     $expenseTypeId = key(CRM_Core_PseudoConstant::accountOptionValues('account_relationship', NULL, " AND v.name LIKE '{$relationName}' "));
@@ -3233,20 +3241,15 @@ WHERE  contribution_id = %1 ";
   }
 
 
-  /*
-   * Function to record additional payment for partial and refund contributions
+  /**
+   * Function to record additional payment for partial and refund contributions.
    *
    * @param int $contributionId
    *   is the invoice contribution id (got created after processing participant payment).
-   * @param array $trxnData
+   * @param array $trxnsData
    *   to take user provided input of transaction details.
    * @param string $paymentType
    *   'owed' for purpose of recording partial payments, 'refund' for purpose of recording refund payments.
-   */
-  /**
-   * @param int $contributionId
-   * @param $trxnsData
-   * @param string $paymentType
    * @param int $participantId
    *
    * @return null|object
@@ -3457,7 +3460,7 @@ WHERE eft.financial_trxn_id IN ({$trxnId}, {$baseTrxnId['financialTrxnId']})
   }
 
   /**
-   * Get list of payments displayed by Contribute_Page_PaymentInfo
+   * Get list of payments displayed by Contribute_Page_PaymentInfo.
    *
    * @param int $id
    * @param $component
@@ -3590,10 +3593,18 @@ WHERE con.id = {$contributionId}
     return CRM_Utils_Array::value('financial_account_id', $result);
   }
 
+  /**
+   * Check tax amount.
+   *
+   * @param array $params
+   * @param bool $isLineItem
+   *
+   * @return mixed
+   */
   public static function checkTaxAmount($params, $isLineItem = FALSE) {
     $taxRates = CRM_Core_PseudoConstant::getTaxRates();
 
-    // Update contribution
+    // Update contribution.
     if (!empty($params['id'])) {
       $id = $params['id'];
       $values = $ids = array();
@@ -3663,4 +3674,5 @@ WHERE con.id = {$contributionId}
     }
     return $params;
   }
+
 }