Merging version 2.1 RC to main trunk.
[fa-stable.git] / sales / allocations / customer_allocate.php
index d92cf39a1c562568a29c5a94aebe3ddf8fd4af76..c0785cb1a80d71f88cdb510d750eb2d306296a6e 100644 (file)
@@ -1,5 +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>.
+***********************************************************************/
 $path_to_root="../..";
 $page_security = 3;
 
@@ -54,7 +63,7 @@ function check_data()
 
                  /*Now check to see that the AllocAmt is no greater than the
                amount left to be allocated against the transaction under review */
-               if (input_num('amount' . $counter) > $_POST['un_allocated' . $counter])
+               if (input_num('amount' . $counter) > input_num('un_allocated' . $counter))
                {
                    //$_POST['amount' . $counter] = $_POST['un_allocated' . $counter];
                }
@@ -82,7 +91,7 @@ function handle_process()
        begin_transaction();
 
        // clear all the allocations for this payment/credit
-       clear_cust_alloctions($_SESSION['alloc']->type, $_SESSION['alloc']->trans_no);
+       clear_cust_alloctions($_SESSION['alloc']->type, $_SESSION['alloc']->trans_no, $_SESSION['alloc']->date_);
 
        // now add the new allocations
        $total_allocated = 0;
@@ -96,8 +105,15 @@ function handle_process()
 
                        update_debtor_trans_allocation($allocn_item->type, $allocn_item->type_no,
                                $allocn_item->current_allocated);
-                       $total_allocated += $allocn_item->current_allocated;
 
+                       // Exchange Variations Joe Hunt 2008-09-20 ////////////////////////////////////////
+
+                       exchange_variation($_SESSION['alloc']->type, $_SESSION['alloc']->trans_no,
+                               $allocn_item->type, $allocn_item->type_no, $_SESSION['alloc']->date_,
+                               $allocn_item->current_allocated, payment_person_types::customer());
+
+                       ///////////////////////////////////////////////////////////////////////////
+                       $total_allocated += $allocn_item->current_allocated;
                }
 
        }  /*end of the loop through the array of allocations made */
@@ -212,7 +228,7 @@ function edit_allocations_for_transaction($type, $trans_no)
                        label_cell("<a href='#' name='Alloc$counter' onclick='allocate_all(this.name.substr(5));return true;'>"
                                         . _("All") . "</a>");
                        label_cell("<a href='#' name='DeAll$counter' onclick='allocate_none(this.name.substr(5));return true;'>"
-                                        . _("None") . "</a>".hidden("un_allocated" . $counter, $un_allocated, false));
+                                        . _("None") . "</a>".hidden("un_allocated" . $counter, price_format($un_allocated), false));
                        end_row();
 
            $total_allocated += input_num('amount' . $counter);
@@ -242,7 +258,7 @@ function edit_allocations_for_transaction($type, $trans_no)
        else
        {
        display_note(_("There are no unsettled transactions to allocate."), 0, 1);
-               
+
                submit_center('Cancel', _("Back to Allocations"), true,
                        _('Abandon allocations and return to selection of allocatable amounts'), true);
     }