Merged changes form main trunk since 2.1RC
[fa-stable.git] / sales / allocations / customer_allocate.php
index d92cf39a1c562568a29c5a94aebe3ddf8fd4af76..f32db9616270d6c6dc9545ed5035ae3ba251458d 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 */
@@ -179,7 +195,7 @@ function edit_allocations_for_transaction($type, $trans_no)
 
     echo "<br>";
 
-       start_form(false, true);
+       start_form();
        div_start('alloc_tbl');
     if (count($_SESSION['alloc']->allocs) > 0)
     {
@@ -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);
@@ -220,7 +236,7 @@ function edit_allocations_for_transaction($type, $trans_no)
                }
 
                label_row(_("Total Allocated"), price_format($total_allocated),
-                       "colspan=6 align=right", "nowrap align=right id='total_allocated'");
+                       "colspan=6 align=right", "nowrap align=right id='total_allocated'", 3);
         if ($_SESSION['alloc']->amount - $total_allocated < 0)
         {
                $font1 = "<font color=red>";
@@ -231,20 +247,20 @@ function edit_allocations_for_transaction($type, $trans_no)
                $left_to_allocate = $_SESSION['alloc']->amount - $total_allocated;
                $left_to_allocate = price_format($left_to_allocate);
         label_row(_("Left to Allocate"), $font1 . $left_to_allocate . $font2,
-               "colspan=6 align=right ", "nowrap align=right id='left_to_allocate'");
+               "colspan=6 align=right ", "nowrap align=right id='left_to_allocate'", 3);
         end_table(1);
 
                hidden('TotalNumberOfAllocs', $counter);
                submit_center_first('UpdateDisplay', _("Refresh"), _('Start again allocation of selected amount'), true);
-               submit('Process', _("Process"), true, _('Process allocations'), true);
-               submit_center_last('Cancel', _("Back to Allocations"),_('Abandon allocations and return to selection of allocatable amounts'), true);
+               submit('Process', _("Process"), true, _('Process allocations'), 'default');
+               submit_center_last('Cancel', _("Back to Allocations"),_('Abandon allocations and return to selection of allocatable amounts'), 'cancel');
        }
        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);
+                       _('Abandon allocations and return to selection of allocatable amounts'), 'cancel');
     }
        div_end();
        end_form();