comment fixes
[civicrm-core.git] / CRM / Financial / BAO / FinancialItem.php
index fc1772e13a45b3a8bad29b4e2a3af6a83ad52232..cf14e860d972851c7cbf9e17b6457cc8356f7a2c 100644 (file)
@@ -1,9 +1,9 @@
 <?php
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.6                                                |
+ | CiviCRM version 4.7                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2014                                |
+ | Copyright CiviCRM LLC (c) 2004-2015                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
 /**
  *
  * @package CRM
- * @copyright CiviCRM LLC (c) 2004-2014
- * $Id$
- *
+ * @copyright CiviCRM LLC (c) 2004-2015
  */
 class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
 
   /**
-   * Class constructor
+   * Class constructor.
    */
   public function __construct() {
     parent::__construct();
   }
 
   /**
-   * Fetch object based on array of properties
+   * Fetch object based on array of properties.
    *
    * @param array $params
    *   (reference ) an assoc array of name/value pairs.
@@ -62,7 +60,7 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
   }
 
   /**
-   * Add the financial items and financial trxn
+   * Add the financial items and financial trxn.
    *
    * @param object $lineItem
    *   Line item object.
@@ -70,9 +68,11 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
    *   Contribution object.
    * @param bool $taxTrxnID
    *
-   * @return void
+   * @param int $trxnId
+   *
+   * @return CRM_Financial_DAO_FinancialItem
    */
-  public static function add($lineItem, $contribution, $taxTrxnID = FALSE) {
+  public static function add($lineItem, $contribution, $taxTrxnID = FALSE, $trxnId = NULL) {
     $contributionStatuses = CRM_Contribute_PseudoConstant::contributionStatus(NULL, 'name');
     $financialItemStatus = CRM_Core_PseudoConstant::get('CRM_Financial_DAO_FinancialItem', 'status_id');
     $itemStatus = NULL;
@@ -121,14 +121,16 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
       CRM_Financial_BAO_FinancialTypeAccount::retrieve($searchParams, $result);
       $params['financial_account_id'] = CRM_Utils_Array::value('financial_account_id', $result);
     }
-    $trxn = CRM_Core_BAO_FinancialTrxn::getFinancialTrxnId($contribution->id, 'ASC', TRUE);
-    $trxnId['id'] = $trxn['financialTrxnId'];
+    if (empty($trxnId)) {
+      $trxn = CRM_Core_BAO_FinancialTrxn::getFinancialTrxnId($contribution->id, 'ASC', TRUE);
+      $trxnId['id'] = $trxn['financialTrxnId'];
+    }
 
     return self::create($params, NULL, $trxnId);
   }
 
   /**
-   * Create the financial Items and financial enity trxn
+   * Create the financial Items and financial entity trxn.
    *
    * @param array $params
    *   Associated array to create financial items.
@@ -137,7 +139,7 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
    * @param array $trxnIds
    *   Financial item ids.
    *
-   * @return object
+   * @return CRM_Financial_DAO_FinancialItem
    */
   public static function create(&$params, $ids = NULL, $trxnIds = NULL) {
     $financialItem = new CRM_Financial_DAO_FinancialItem();
@@ -180,7 +182,7 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
   }
 
   /**
-   * Takes an associative array and creates a entity financial transaction object
+   * Takes an associative array and creates a entity financial transaction object.
    *
    * @param array $params
    *   (reference ) an assoc array of name/value pairs.
@@ -195,7 +197,7 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
   }
 
   /**
-   * Retrive entity financial trxn details
+   * Retrive entity financial trxn details.
    *
    * @param array $params
    *   (reference ) an assoc array of name/value pairs.
@@ -207,7 +209,7 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
   public static function retrieveEntityFinancialTrxn($params, $maxId = FALSE) {
     $financialItem = new CRM_Financial_DAO_EntityFinancialTrxn();
     $financialItem->copyValues($params);
-    //retrieve last entry from civicrm_entity_financial_trxn
+    // retrieve last entry from civicrm_entity_financial_trxn
     if ($maxId) {
       $financialItem->orderBy('id DESC');
       $financialItem->limit(1);
@@ -231,7 +233,7 @@ class CRM_Financial_BAO_FinancialItem extends CRM_Financial_DAO_FinancialItem {
   }
 
   /**
-   * Check if contact is present in financial_item table
+   * Check if contact is present in financial_item table.
    *
    * CRM-12929
    *