Eliminated non-static method calls and other bulk fixes to fix php5 warnings
[fa-stable.git] / sales / includes / db / cust_trans_db.inc
index 6f536ca0cd150b5c43dec60e145ffb09bcc2c535..e3e220063acb34495fe4ec999becfdb3aa14f1e3 100644 (file)
@@ -1,4 +1,14 @@
 <?php
+/**********************************************************************
+    Copyright (C) FrontAccounting, LLC.
+       Released under the terms of the GNU General Public License, GPL, 
+       as published by the Free Software Foundation, either version 3 
+       of the License, or (at your option) any later version.
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
+    See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
+***********************************************************************/
 //------------------------------------------------------------------------------
 //     Retreive parent document number(s) for given transaction
 //
@@ -79,20 +89,23 @@ function get_customer_trans_version($type, $trans_no) {
 function write_customer_trans($trans_type, $trans_no, $debtor_no, $BranchNo,
        $date_, $reference, $Total, $discount=0, $Tax=0, $Freight=0, $FreightTax=0,
        $sales_type=0, $order_no=0, $trans_link=0, $ship_via=0, $due_date="",
-       $AllocAmt=0, $dimension_id=0, $dimension2_id=0)
+       $AllocAmt=0, $rate=0, $dimension_id=0, $dimension2_id=0)
 {
-
+       $new = $trans_no==0;
        $curr = get_customer_currency($debtor_no);
        if ($rate == 0)
                $rate = get_exchange_rate_from_home_currency($curr, $date_);
 
        $SQLDate = date2sql($date_);
        if ($due_date == "")
-               $SQLDueDate = "000-00-00";
+               $SQLDueDate = "0000-00-00";
        else
                $SQLDueDate = date2sql($due_date);
+       
+       if ($trans_type == ST_BANKPAYMENT)
+               $Total = -$Total;
 
-       if ($trans_no==0) {
+       if ($new) {
        $trans_no = get_next_trans_no($trans_type);
 
        $sql = "INSERT INTO ".TB_PREF."debtor_trans (
@@ -124,6 +137,8 @@ function write_customer_trans($trans_type, $trans_no, $debtor_no, $BranchNo,
        }
        db_query($sql, "The debtor transaction record could not be inserted");
 
+       add_audit_trail($trans_type, $trans_no, $date_, $new ? '': _("Updated."));
+
        return $trans_no;
 }
 
@@ -136,7 +151,7 @@ function get_customer_trans($trans_id, $trans_type)
                ".TB_PREF."debtors_master.name AS DebtorName, ".TB_PREF."debtors_master.address, ".TB_PREF."debtors_master.email AS email2,
                ".TB_PREF."debtors_master.curr_code, ".TB_PREF."debtors_master.tax_id, ".TB_PREF."debtors_master.payment_terms ";
 
-       if ($trans_type == systypes::cust_payment()) {
+       if ($trans_type == ST_CUSTPAYMENT) {
                // it's a payment so also get the bank account
                $sql .= ", ".TB_PREF."bank_accounts.bank_name, ".TB_PREF."bank_accounts.bank_account_name,
                        ".TB_PREF."bank_accounts.account_type AS BankTransType ";
@@ -156,7 +171,7 @@ function get_customer_trans($trans_id, $trans_type)
 
        $sql .= " FROM ".TB_PREF."debtor_trans, ".TB_PREF."debtors_master ";
 
-       if ($trans_type == systypes::cust_payment()) {
+       if ($trans_type == ST_CUSTPAYMENT) {
                // it's a payment so also get the bank account
                $sql .= ", ".TB_PREF."bank_trans, ".TB_PREF."bank_accounts";
        }
@@ -170,7 +185,7 @@ function get_customer_trans($trans_id, $trans_type)
                AND ".TB_PREF."debtor_trans.type=$trans_type
                AND ".TB_PREF."debtor_trans.debtor_no=".TB_PREF."debtors_master.debtor_no";
 
-       if ($trans_type == systypes::cust_payment()) {
+       if ($trans_type == ST_CUSTPAYMENT) {
                // it's a payment so also get the bank account
                $sql .= " AND ".TB_PREF."bank_trans.trans_no =$trans_id
                        AND ".TB_PREF."bank_trans.type=$trans_type