<?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>.
+***********************************************************************/
/* Definition of the Supplier Transactions class to hold all the information for an accounts payable invoice or credit note
*/
class supp_trans
{
- var $grn_items; /*array of objects of class GRNDetails using the GRN No as the pointer */
+ var $grn_items; /*array of objects of class grn_item using the id as the pointer */
var $gl_codes; /*array of objects of class gl_codes using a counter as the pointer */
var $supplier_id;
var $supplier_name;
return 1;
}
- function remove_grn_from_trans(&$grn_item_id)
+ function remove_grn_from_trans($grn_item_id)
{
unset($this->grn_items[$grn_item_id]);
}
- function remove_gl_codes_from_trans(&$gl_code_counter)
+ function remove_gl_codes_from_trans($gl_code_counter)
{
unset($this->gl_codes[$gl_code_counter]);
}
$this->ov_amount = $this->ov_discount = $this->supplier_id = 0;
$this->grn_items = array();
- $this->gl_codes = array();
+ $this->gl_codes = array();
}
- function get_taxes($tax_group_id=null, $shipping_cost=0)
+ function get_taxes($tax_group_id=null, $shipping_cost=0, $gl_codes=true)
{
$items = array();
$prices = array();
$prices[] =round( ($ln_itm->this_quantity_inv * $ln_itm->taxfree_charge_price($tax_group_id, $tax_group)),
user_price_dec());
}
-
+
if ($tax_group_id == null)
$tax_group_id = $this->tax_group_id;
$taxes = get_tax_for_items($items, $prices, $shipping_cost, $tax_group_id);
-
+
+///////////////// Joe Hunt 2009.08.18
+
+ if ($gl_codes)
+ {
+ foreach ($this->gl_codes as $gl_code)
+ {
+ $index = is_tax_account($gl_code->gl_code);
+ if ($index !== false)
+ {
+ $taxes[$index]['Value'] += $gl_code->amount;
+ }
+ }
+ }
+////////////////
return $taxes;
}
user_price_dec());
foreach ($this->gl_codes as $gl_line)
- $total += $gl_line->amount;
-
+ { //////// 2009-08-18 Joe Hunt
+ if (!is_tax_account($gl_line->gl_code))
+ $total += $gl_line->amount;
+ }
return $total;
}