Eliminated non-static method calls and other bulk fixes to fix php5 warnings
[fa-stable.git] / purchasing / includes / db / grn_db.inc
index 48410380c30de51f1686775181b02c37089b0b53..3a9e45955515ffca5dbc8f67e97b680160807871 100644 (file)
@@ -1,13 +1,13 @@
 <?php
 /**********************************************************************
     Copyright (C) FrontAccounting, LLC.
-       Released under the terms of the GNU Affero General Public License,
-       AGPL, as published by the Free Software Foundation, either version 
-       of the License, or (at your option) any later version.
+       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/agpl-3.0.html>.
+    See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 //------------------- update average material cost ------------------------------------------ Joe Hunt Mar-03-2008
 
@@ -31,20 +31,18 @@ function update_average_material_cost($supplier, $stock_id, $price, $qty, $date,
                $exclude = 0;
        $qoh = get_qoh_on_date($stock_id, null, $date, $exclude);
 
-       if ($qoh + $qty <= 0)
-               $material_cost = 0;
-       else
+       if ($adj_only)
        {
-               if ($adj_only)
-               {
-                       if ($qoh <= 0)
-                               $material_cost = 0;
-                       else
-                               $material_cost = ($qoh * $material_cost + $qty * $price_in_home_currency) /     $qoh;
-               }
+               if ($qoh <= 0)
+                       $material_cost = 0;
                else
-                       $material_cost = ($qoh * $material_cost + $qty * $price_in_home_currency) /     ($qoh + $qty);
+                       $material_cost = ($qoh * $material_cost + $qty * $price_in_home_currency) /     $qoh;
        }
+       elseif ($qoh + $qty <= 0)
+               $material_cost = 0;
+       else
+               $material_cost = ($qoh * $material_cost + $qty * $price_in_home_currency) /     ($qoh + $qty);
+
        $sql = "UPDATE ".TB_PREF."stock_master SET material_cost=".db_escape($material_cost)."
                WHERE stock_id='$stock_id'";
        db_query($sql,"The cost details for the inventory item could not be updated");
@@ -55,6 +53,8 @@ function update_average_material_cost($supplier, $stock_id, $price, $qty, $date,
 
 function add_grn(&$po, $date_, $reference, $location)
 {
+       global $Refs;
+
        begin_transaction();
 
        $grn = add_grn_batch($po->order_no, $po->supplier_id, $reference, $location, $date_);
@@ -95,7 +95,9 @@ function add_grn(&$po, $date_, $reference, $location)
                } /*quantity received is != 0 */
        } /*end of order_line loop */
 
-       references::save_last($reference, 25);
+       $Refs->save(25, $grn, $reference);
+
+       add_audit_trail(25, $grn, $date_);
 
        commit_transaction();
 
@@ -169,6 +171,8 @@ function set_grn_item_credited(&$entered_grn, $supplier, $transno, $date)
 
        $sql = "UPDATE ".TB_PREF."purch_order_details
         SET quantity_received = quantity_received + $entered_grn->this_quantity_inv,
+        quantity_ordered = quantity_ordered + $entered_grn->this_quantity_inv,
+        qty_invoiced = qty_invoiced + $entered_grn->this_quantity_inv,
         std_cost_unit=$mcost,
         act_price=$entered_grn->chg_price
         WHERE po_detail_item = ".$myrow["po_detail_item"];