Merging version 2.1 RC to main trunk.
[fa-stable.git] / gl / manage / bank_accounts.php
index 5081e3b5d6140acd32a0f050d7f29fb58f8abcc5..e794f697a85f6c3ab927f2d6d0f1e44960c9139e 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>.
+***********************************************************************/
 $page_security = 10;
 $path_to_root="../..";
 include($path_to_root . "/includes/session.inc");
@@ -30,17 +39,19 @@ if ($Mode=='ADD_ITEM' || $Mode=='UPDATE_ITEM')
        if ($selected_id != -1) 
        {
                
-               update_bank_account($selected_id, $_POST['account_type'], $_POST['bank_account_name'], $_POST['bank_name'], 
-                       $_POST['bank_account_number'], 
+               update_bank_account($selected_id, $_POST['account_code'],
+                               $_POST['account_type'], $_POST['bank_account_name'], 
+                               $_POST['bank_name'], $_POST['bank_account_number'], 
                        $_POST['bank_address'], $_POST['BankAccountCurrency']);         
                        display_notification(_('Bank account has been updated'));
        } 
        else 
        {
     
-               add_bank_account($_POST['account_code'], $_POST['account_type'], $_POST['bank_account_name'], $_POST['bank_name'], 
-                       $_POST['bank_account_number'], 
-                       $_POST['bank_address'], $_POST['BankAccountCurrency']);
+               add_bank_account($_POST['account_code'], $_POST['account_type'], 
+                               $_POST['bank_account_name'], $_POST['bank_name'], 
+                       $_POST['bank_account_number'],  $_POST['bank_address'], 
+                               $_POST['BankAccountCurrency']);
                        display_notification(_('New bank account has been added'));
        }
                $Mode = 'RESET';
@@ -62,6 +73,14 @@ elseif( $Mode == 'Delete')
                $cancel_delete = 1;
                display_error(_("Cannot delete this bank account because transactions have been created using this account."));
        }
+       $sql= "SELECT COUNT(*) FROM ".TB_PREF."sales_pos WHERE pos_account='$selected_id'";
+       $result = db_query($sql,"check failed");
+       $myrow = db_fetch_row($result);
+       if ($myrow[0] > 0) 
+       {
+               $cancel_delete = 1;
+               display_error(_("Cannot delete this bank account because POS definitions have been created using this account."));
+       }
        if (!$cancel_delete) 
        {
                delete_bank_account($selected_id);
@@ -79,8 +98,11 @@ if ($Mode == 'RESET')
 
 /* Always show the list of accounts */
 
-$sql = "SELECT ".TB_PREF."bank_accounts.*, ".TB_PREF."chart_master.account_name FROM ".TB_PREF."bank_accounts, ".TB_PREF."chart_master 
-       WHERE ".TB_PREF."bank_accounts.account_code = ".TB_PREF."chart_master.account_code";
+$sql = "SELECT account.*, gl_account.account_name 
+       FROM ".TB_PREF."bank_accounts account, ".TB_PREF."chart_master gl_account 
+       WHERE account.account_code = gl_account.account_code"
+       ." ORDER BY account_code, bank_curr_code";
+
 $result = db_query($sql,"could not get bank accounts");
 
 check_db_error("The bank accounts set up could not be retreived", $sql);
@@ -88,8 +110,8 @@ check_db_error("The bank accounts set up could not be retreived", $sql);
 start_form();
 start_table("$table_style width='80%'");
 
-$th = array(_("GL Account"), _("Bank"), _("Account Name"),
-       _("Type"), _("Number"), _("Currency"), _("Bank Address"),'','');
+$th = array(_("Account Name"), _("Type"), _("Currency"), _("GL Account"), 
+       _("Bank"), _("Number"), _("Bank Address"),'','');
 table_header($th);     
 
 $k = 0; 
@@ -98,15 +120,15 @@ while ($myrow = db_fetch($result))
        
        alt_table_row_color($k);
 
-    label_cell($myrow["account_code"] . " " . $myrow["account_name"], "nowrap");
-    label_cell($myrow["bank_name"], "nowrap");
     label_cell($myrow["bank_account_name"], "nowrap");
        label_cell(bank_account_types::name($myrow["account_type"]), "nowrap");
-    label_cell($myrow["bank_account_number"], "nowrap");
     label_cell($myrow["bank_curr_code"], "nowrap");
+    label_cell($myrow["account_code"] . " " . $myrow["account_name"], "nowrap");
+    label_cell($myrow["bank_name"], "nowrap");
+    label_cell($myrow["bank_account_number"], "nowrap");
     label_cell($myrow["bank_address"]);
-       edit_button_cell("Edit".$myrow["account_code"], _("Edit"));
-       edit_button_cell("Delete".$myrow["account_code"], _("Delete"));
+       edit_button_cell("Edit".$myrow["id"], _("Edit"));
+       delete_button_cell("Delete".$myrow["id"], _("Delete"));
     end_row(); 
 }
 
@@ -135,20 +157,12 @@ if ($is_editing)
        hidden('selected_id', $selected_id);
        hidden('account_code');
        hidden('BankAccountCurrency', $_POST['BankAccountCurrency']);   
-       label_row(_("Bank Account GL Code:"), $_POST['account_code']);
-       set_focus('account_type');
+       set_focus('bank_account_name');
 } 
-else 
-{
-       gl_all_accounts_list_row(_("Bank Account GL Code:"), 'account_code', null, true);       
-       set_focus('account_code');
-}
 
-bank_account_types_list_row(_("Account Type:"), 'account_type', null); 
-
-text_row(_("Bank Name:"), 'bank_name', null, 50, 60);
 text_row(_("Bank Account Name:"), 'bank_account_name', null, 50, 100);
-text_row(_("Bank Account Number:"), 'bank_account_number', null, 30, 60);
+
+bank_account_types_list_row(_("Account Type:"), 'account_type', null); 
 
 if ($is_editing) 
 {
@@ -159,6 +173,13 @@ else
        currencies_list_row(_("Bank Account Currency:"), 'BankAccountCurrency', null);
 }      
 
+if($is_editing)
+       label_row(_("Bank Account GL Code:"), $_POST['account_code']);
+else 
+       gl_all_accounts_list_row(_("Bank Account GL Code:"), 'account_code', null);
+
+text_row(_("Bank Name:"), 'bank_name', null, 50, 60);
+text_row(_("Bank Account Number:"), 'bank_account_number', null, 30, 60);
 textarea_row(_("Bank Address:"), 'bank_address', null, 40, 5);
 
 end_table(1);