Merge branch 'VAT-417-Push' of github.com:Parag18/civicrm-core into Parag18-VAT-417...
[civicrm-core.git] / CRM / Financial / BAO / FinancialAccount.php
index 0be4ddef5de380703347d88cc42eb0bc0ccd8ea7..2f2b05d514c6058a225488653c511d0d69e44b34 100644 (file)
@@ -2,9 +2,9 @@
 
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.4                                                |
+ | CiviCRM version 4.5                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013                                |
+ | Copyright CiviCRM LLC (c) 2004-2014                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
@@ -29,7 +29,7 @@
 /**
  *
  * @package CRM
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
  * $Id$
  *
  */
@@ -95,12 +95,14 @@ class CRM_Financial_BAO_FinancialAccount extends CRM_Financial_DAO_FinancialAcco
    * @static
    * @return object
    */
-  static function add(&$params, &$ids) {
-    $params['is_active'] = CRM_Utils_Array::value('is_active', $params, FALSE);
-    $params['is_deductible'] = CRM_Utils_Array::value('is_deductible', $params, FALSE);
-    $params['is_tax'] = CRM_Utils_Array::value('is_tax', $params, FALSE);
-    $params['is_header_account'] = CRM_Utils_Array::value('is_header_account', $params, FALSE);
-    $params['is_default'] = CRM_Utils_Array::value('is_default', $params, FALSE);
+  static function add(&$params, &$ids = array()) {
+    if(empty($params['id'])) {
+      $params['is_active'] = CRM_Utils_Array::value('is_active', $params, FALSE);
+      $params['is_deductible'] = CRM_Utils_Array::value('is_deductible', $params, FALSE);
+      $params['is_tax'] = CRM_Utils_Array::value('is_tax', $params, FALSE);
+      $params['is_header_account'] = CRM_Utils_Array::value('is_header_account', $params, FALSE);
+      $params['is_default'] = CRM_Utils_Array::value('is_default', $params, FALSE);
+    }
     if (!empty($params['is_default'])) {
       $query = 'UPDATE civicrm_financial_account SET is_default = 0 WHERE financial_account_type_id = %1';
       $queryParams = array(1 => array($params['financial_account_type_id'], 'Integer'));
@@ -110,7 +112,9 @@ class CRM_Financial_BAO_FinancialAccount extends CRM_Financial_DAO_FinancialAcco
     // action is taken depending upon the mode
     $financialAccount = new CRM_Financial_DAO_FinancialAccount();
     $financialAccount->copyValues($params);
-    $financialAccount->id = CRM_Utils_Array::value('contributionType', $ids);
+    if (!empty($ids['contributionType'])) {
+      $financialAccount->id = CRM_Utils_Array::value('contributionType', $ids);
+    }
     $financialAccount->save();
     return $financialAccount;
   }
@@ -156,6 +160,8 @@ class CRM_Financial_BAO_FinancialAccount extends CRM_Financial_DAO_FinancialAcco
    *
    * @financialTypeId int      Financial Type Id
    *
+   * @param $financialTypeId
+   *
    * @return accounting code
    * @static
    */
@@ -181,7 +187,7 @@ WHERE cft.id = %1
    *
    * @param $financialAccountTypeId financial account type id
    *
-   * @param $accountTypeCode account type code
+   * @param \account|string $accountTypeCode account type code
    *
    * @return integer count
    * @static