Added links to payments for invoices in customer/supplier allocation inquiry
[fa-stable.git] / purchasing / supplier_payment.php
index 0d094ba346b5e49d0512ed05b905e1d33be4bf38..ed8f5a089a9c50302c9e7614358e2e68b31fe496 100644 (file)
@@ -59,6 +59,7 @@ if (isset($_POST['_DatePaid_changed'])) {
 
 if (list_updated('supplier_id') || list_updated('bank_account')) {
   $_SESSION['alloc']->read();
+  $_POST['memo_'] = $_POST['amount'] = '';
   $Ajax->activate('alloc_tbl');
 }
 //----------------------------------------------------------------------------------------
@@ -77,7 +78,7 @@ if (!isset($_POST['bank_account'])) { // first page call
                        $_POST['memo_'] = $inv['supp_reference'];
                        foreach($_SESSION['alloc']->allocs as $line => $trans) {
                                if ($trans->type == ST_SUPPINVOICE && $trans->type_no == $_GET['PInvoice']) {
-                                       $_POST['amount'] = 
+                                       $_POST['amount'] =
                                                $_SESSION['alloc']->amount = price_format($_SESSION['alloc']->allocs[$line]->amount);
                                        $_SESSION['alloc']->allocs[$line]->current_allocated =
                                                $_SESSION['alloc']->allocs[$line]->amount;
@@ -87,7 +88,6 @@ if (!isset($_POST['bank_account'])) { // first page call
                        unset($inv);
                } else
                        display_error(_("Invalid purchase invoice number."));
-
        }
 }
 if (isset($_GET['AddedID'])) {
@@ -186,6 +186,16 @@ function check_inputs()
                set_focus('DatePaid');
                return false;
        }
+
+       $limit = get_bank_account_limit($_POST['bank_account'], $_POST['DatePaid']);
+
+       if ($limit != null && ($limit < input_num('amount')))
+       {
+               display_error(sprintf(_("The total bank amount exceeds allowed limit (%s)."), price_format($limit)));
+               set_focus('amount');
+               return false;
+       }
+
     if (!$Refs->is_valid($_POST['ref'])) 
     {
                display_error(_("You must enter a reference."));
@@ -264,7 +274,12 @@ start_form();
 
        set_global_supplier($_POST['supplier_id']);
        
+       if (!list_updated('bank_account'))
+               $_POST['bank_account'] = get_default_supplier_bank_account($_POST['supplier_id']);              
+       
     bank_accounts_list_row(_("From Bank Account:"), 'bank_account', null, true);
+       
+       bank_balance_row($_POST['bank_account']);
 
        table_section(2);
 
@@ -287,9 +302,9 @@ start_form();
        end_outer_table(1); // outer table
 
        if ($bank_currency == $supplier_currency) {
-       div_start('alloc_tbl');
+               div_start('alloc_tbl');
                show_allocatable(false);
-       div_end();
+               div_end();
        }
 
        start_table(TABLESTYLE, "width=60%");