Code cleanup.
[fa-stable.git] / sales / manage / customer_branches.php
index de40042e49fbb21a5461fb94a3511e5cb5f17477..e2a73af9007a1fd00426206f04598b0eade9b065 100644 (file)
@@ -1,10 +1,19 @@
 <?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 = 3;
 $path_to_root="../..";
 include($path_to_root . "/includes/session.inc");
 
-page(_("Customer Branches"));
+page(_("Customer Branches"), @$_REQUEST['popup']);
 
 include($path_to_root . "/includes/ui.inc");
 
@@ -20,28 +29,25 @@ check_db_has_shippers(_("There are no shipping companies defined in the system.
 
 check_db_has_tax_groups(_("There are no tax groups defined in the system. At least one tax group is required before proceeding."));
 
+simple_page_mode(true);
 //-----------------------------------------------------------------------------------------------
 
 if (isset($_GET['debtor_no']))
 {
        $_POST['customer_id'] = strtoupper($_GET['debtor_no']);
-       $_POST['New'] = "1";
 }
+$_POST['branch_code'] = $selected_id;
 
 if (isset($_GET['SelectedBranch']))
 {
-       $_POST['branch_code'] = strtoupper($_GET['SelectedBranch']);
-       unset($_POST['New']);
-}
-
-if (!isset($_GET['SelectedBranch']) && !isset($_POST['AddUpdate']))
-{
-       $_POST['New'] = "1";
+       $br = get_branch($_GET['SelectedBranch']);
+       $_POST['customer_id'] = $br['debtor_no'];
+       $selected_id = $_POST['branch_code'] = $br['branch_code'];
+       $Mode = 'Edit';
 }
-
 //-----------------------------------------------------------------------------------------------
 
-if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM']))
+if ($Mode=='ADD_ITEM' || $Mode=='UPDATE_ITEM')
 {
 
        //initialise no input errors assumed initially before we test
@@ -53,13 +59,13 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM']))
        {
                $input_error = 1;
                display_error(_("The Branch name cannot be empty."));
+               set_focus('br_name');
        }
 
        if ($input_error != 1)
        {
 
-               //if (!isset($_POST['New']))
-               if (isset($_POST['UPDATE_ITEM']))
+       if ($selected_id != -1)
                {
                        /*SelectedBranch could also exist if submit had not been clicked this code would not run in this case cos submit is false of course see the     delete code below*/
 
@@ -79,10 +85,12 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM']))
                default_location=".db_escape($_POST['default_location']) . ",
                br_post_address =".db_escape($_POST['br_post_address']) . ",
                disable_trans=".db_escape($_POST['disable_trans']) . ",
+                               group_no=".db_escape($_POST['group_no']) . ", 
                default_ship_via=".db_escape($_POST['default_ship_via']) . "
                WHERE branch_code =".db_escape($_POST['branch_code']) . "
                AND debtor_no=".db_escape($_POST['customer_id']);
 
+                       $note =_('Selected customer branch has been updated');
                }
                else
                {
@@ -90,7 +98,7 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM']))
                        $sql = "INSERT INTO ".TB_PREF."cust_branch (debtor_no, br_name, br_address,
                                salesman, phone, fax,
                                contact_name, area, email, tax_group_id, sales_account, receivables_account, payment_discount_account, sales_discount_account, default_location,
-                               br_post_address, disable_trans, default_ship_via)
+                               br_post_address, disable_trans, group_no, default_ship_via)
                                VALUES (".db_escape($_POST['customer_id']). ",".db_escape($_POST['br_name']) . ", "
                                        .db_escape($_POST['br_address']) . ", ".db_escape($_POST['salesman']) . ", "
                                        .db_escape($_POST['phone']) . ", ".db_escape($_POST['fax']) . ","
@@ -103,17 +111,20 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM']))
                                        .db_escape($_POST['default_location']) . ", "
                                        .db_escape($_POST['br_post_address']) . ","
                                        .db_escape($_POST['disable_trans']) . ", "
+                                       .db_escape($_POST['group_no']) . ", "                                   
                                        .db_escape($_POST['default_ship_via']) . ")";
+
+                       $note = _('New customer branch has been added');
                }
 
                //run the sql from either of the above possibilites
                db_query($sql,"The branch record could not be inserted or updated");
-
-               meta_forward($_SERVER['PHP_SELF'], "debtor_no=" . $_POST['customer_id']);
+               display_notification($note);
+               $Mode = 'RESET';
        }
 
 }
-elseif (isset($_GET['delete']))
+elseif ($Mode == 'Delete')
 {
        //the link to delete a selected record was clicked instead of the submit button
 
@@ -141,18 +152,30 @@ elseif (isset($_GET['delete']))
                {
                        $sql="DELETE FROM ".TB_PREF."cust_branch WHERE branch_code='" . $_POST['branch_code']. "' AND debtor_no='" . $_POST['customer_id']. "'";
                        db_query($sql,"could not delete branch");
-                       meta_forward($_SERVER['PHP_SELF'], "debtor_no=" . $_POST['customer_id']);
+                       display_notification(_('Selected customer branch has been deleted'));
                }
        } //end ifs to test if the branch can be deleted
+       $Mode = 'RESET';
 }
 
+if ($Mode == 'RESET' || get_post('_customer_id_update'))
+{
+       $selected_id = -1;
+       $cust_id = $_POST['customer_id'];
+       $inact = get_post('show_inactive');
+       unset($_POST);
+       $_POST['show_inactive'] = $inact;
+       $_POST['customer_id'] = $cust_id;
+       $Ajax->activate('_page_body');
+}
 start_form();
 
 echo "<center>" . _("Select a customer: ") . "&nbsp;&nbsp;";
 customer_list('customer_id', null, false, true);
-echo "</center><br><br>";
+echo "</center><br>";
 
 $num_branches = db_customer_has_branches($_POST['customer_id']);
+
 if ($num_branches)
 {
        $sql = "SELECT ".TB_PREF."debtors_master.name, ".TB_PREF."cust_branch.*, ".TB_PREF."salesman.salesman_name,
@@ -164,12 +187,17 @@ if ($num_branches)
                AND ".TB_PREF."cust_branch.salesman=".TB_PREF."salesman.salesman_code
                AND ".TB_PREF."cust_branch.debtor_no = '" . $_POST['customer_id']. "'";
 
+       if (!check_value('show_inactive')) $sql .= " AND !".TB_PREF."cust_branch.inactive";
+
        $result = db_query($sql,"could not get customer branches");
 
        start_table("$table_style width=60%");
 
        $th = array(_("Name"), _("Contact"), _("Sales Person"), _("Area"),
                _("Phone No"), _("Fax No"), _("E-mail"), _("Tax Group"), "", "");
+       inactive_control_column($th);
+       if (@$_REQUEST['popup']) $th[] = '';
+
        table_header($th);
 
        while ($myrow = db_fetch($result))
@@ -181,103 +209,100 @@ if ($num_branches)
                label_cell($myrow["description"]);
                label_cell($myrow["phone"]);
                label_cell($myrow["fax"]);
-               label_cell("<a href=mailto:" . $myrow["email"]. ">" . $myrow["email"]. "</a>");
+               email_cell($myrow["email"]);
                label_cell($myrow["tax_group_name"]);
-               edit_link_cell("debtor_no=" . $_POST['customer_id']. "&SelectedBranch=" . $myrow["branch_code"]);
-               delete_link_cell("debtor_no=" . $_POST['customer_id']. "&SelectedBranch=" . $myrow["branch_code"]. "&delete=yes");
+               inactive_control_cell($myrow["branch_code"], $myrow["inactive"],
+                       'cust_branch', 'branch_code');
+               if (@$_REQUEST['popup'])
+                       select_button_cell("Select".$myrow["branch_code"], $myrow["branch_code"], '');
+               edit_button_cell("Edit".$myrow["branch_code"], _("Edit"));
+               delete_button_cell("Delete".$myrow["branch_code"], _("Delete"));
                end_row();
        }
-       end_table();
+       inactive_control_row($th);
+       end_table(1);
        //END WHILE LIST LOOP
 }
 else
        display_note(_("The selected customer does not have any branches. Please create at least one branch."));
-//else
-//{
-//}
-
 
-if (!isset($_POST['New']))
-{
-       hyperlink_params($_SERVER['PHP_SELF'], _("New Customer Branch"), "debtor_no=" . $_POST['customer_id']);
-}
-echo "<br>";
-start_table("$table_style2 width=60%", 5);
-echo "<tr valign=top><td>"; // outer table
+start_outer_table($table_style2, 5);
 
-echo "<table>";
+table_section(1);
 
-
-if (!isset($_POST['New']) && $num_branches)
+$_POST['email'] = "";
+if ($selected_id != -1)
 {
-
-       //editing an existing branch
-    $sql = "SELECT * FROM ".TB_PREF."cust_branch
-               WHERE branch_code='" . $_POST['branch_code'] . "'
-               AND debtor_no='" . $_POST['customer_id'] . "'";
-
-       $result = db_query($sql,"check failed");
-    $myrow = db_fetch($result);
-
-    $_POST['branch_code'] = $myrow["branch_code"];
-    $_POST['br_name']  = $myrow["br_name"];
-    $_POST['br_address']  = $myrow["br_address"];
-    $_POST['br_post_address']  = $myrow["br_post_address"];
-    $_POST['contact_name'] = $myrow["contact_name"];
-    $_POST['salesman'] =$myrow["salesman"];
-    $_POST['area'] =$myrow["area"];
-    $_POST['phone'] =$myrow["phone"];
-    $_POST['fax'] =$myrow["fax"];
-    $_POST['email'] =$myrow["email"];
-    $_POST['tax_group_id'] = $myrow["tax_group_id"];
-    $_POST['disable_trans'] = $myrow['disable_trans'];
-    $_POST['default_location'] = $myrow["default_location"];
-    $_POST['default_ship_via'] = $myrow['default_ship_via'];
-    $_POST['sales_account'] = $myrow["sales_account"];
-    $_POST['sales_discount_account'] = $myrow['sales_discount_account'];
-    $_POST['receivables_account'] = $myrow['receivables_account'];
-    $_POST['payment_discount_account'] = $myrow['payment_discount_account'];
-
+       if ($Mode == 'Edit') {
+
+               //editing an existing branch
+       $sql = "SELECT * FROM ".TB_PREF."cust_branch
+                       WHERE branch_code='" . $_POST['branch_code'] . "'
+                       AND debtor_no='" . $_POST['customer_id'] . "'";
+               $result = db_query($sql,"check failed");
+           $myrow = db_fetch($result);
+               set_focus('br_name');
+       $_POST['branch_code'] = $myrow["branch_code"];
+           $_POST['br_name']  = $myrow["br_name"];
+           $_POST['br_address']  = $myrow["br_address"];
+           $_POST['br_post_address']  = $myrow["br_post_address"];
+           $_POST['contact_name'] = $myrow["contact_name"];
+           $_POST['salesman'] =$myrow["salesman"];
+           $_POST['area'] =$myrow["area"];
+           $_POST['phone'] =$myrow["phone"];
+           $_POST['fax'] =$myrow["fax"];
+           $_POST['email'] =$myrow["email"];
+           $_POST['tax_group_id'] = $myrow["tax_group_id"];
+           $_POST['disable_trans'] = $myrow['disable_trans'];
+           $_POST['default_location'] = $myrow["default_location"];
+           $_POST['default_ship_via'] = $myrow['default_ship_via'];
+           $_POST['sales_account'] = $myrow["sales_account"];
+           $_POST['sales_discount_account'] = $myrow['sales_discount_account'];
+           $_POST['receivables_account'] = $myrow['receivables_account'];
+           $_POST['payment_discount_account'] = $myrow['payment_discount_account'];
+               $_POST['group_no']  = $myrow["group_no"];
+       }
 }
-else
+elseif ($Mode != 'ADD_ITEM')
 { //end of if $SelectedBranch only do the else when a new record is being entered
-
-       $sql = "SELECT name, address, email
-               FROM ".TB_PREF."debtors_master WHERE debtor_no = '" . $_POST['customer_id']. "'";
-       $result = db_query($sql,"check failed");
-       $myrow = db_fetch($result);
-       $_POST['br_name'] = $myrow["name"];
-       $_POST['contact_name'] = _("Main Branch");
-       $_POST['br_address'] = $_POST['br_post_address'] = $myrow["address"];
+       if(!$num_branches) {
+               $sql = "SELECT name, address, email
+                       FROM ".TB_PREF."debtors_master WHERE debtor_no = '" . $_POST['customer_id']. "'";
+               $result = db_query($sql,"check failed");
+               $myrow = db_fetch($result);
+               $_POST['br_name'] = $myrow["name"];
+               $_POST['contact_name'] = _('Main Branch');
+               $_POST['br_address'] = $_POST['br_post_address'] = $myrow["address"];
+               $_POST['email'] = $myrow['email'];
+       }
        $_POST['branch_code'] = "";
-       $_POST['email'] = $myrow['email'];
        if (!isset($_POST['sales_account']) || !isset($_POST['sales_discount_account']))
        {
                $company_record = get_company_prefs();
 
+               // We use the Item Sales Account as default!
            // $_POST['sales_account'] = $company_record["default_sales_act"];
-           // 2008-06-14. Changed so if no account here the Item Sales Account is taken
-           // Will be set if it should override the item sales account
-           $_POST['sales_account'] = '';
+           $_POST['sales_account'] = "";
            $_POST['sales_discount_account'] = $company_record['default_sales_discount_act'];
            $_POST['receivables_account'] = $company_record['debtors_act'];
            $_POST['payment_discount_account'] = $company_record['default_prompt_payment_act'];
 
        }
 
-       hidden('New', 'Yes');
 }
-hidden('branch_code', $_POST['branch_code']);
+hidden('selected_id', $selected_id);
+hidden('branch_code');
+hidden('popup', @$_REQUEST['popup']);
 
 table_section_title(_("Name and Contact"));
 
-text_row(_("Branch Name:"), 'br_name', $_POST['br_name'], 35, 40);
-text_row(_("Contact Person:"), 'contact_name', $_POST['contact_name'], 35, 40);
+text_row(_("Branch Name:"), 'br_name', null, 35, 40);
+text_row(_("Contact Person:"), 'contact_name', null, 35, 40);
 
 text_row(_("Phone Number:"), 'phone', null, 20, 20);
 text_row(_("Fax Number:"), 'fax', null, 20, 20);
 
-text_row("<a href='Mailto:'>" . _("E-mail:") . "</a>", 'email', $_POST['email'], 35, 55);
+email_row(_("E-mail:"), 'email', null, 35, 55);
 
 table_section_title(_("Sales"));
 
@@ -285,43 +310,38 @@ sales_persons_list_row( _("Sales Person:"), 'salesman', null);
 
 sales_areas_list_row( _("Sales Area:"), 'area', null);
 
+sales_groups_list_row(_("Sales Group:"), 'group_no', null, true);
+
 locations_list_row(_("Default Inventory Location:"), 'default_location', null);
 
 shippers_list_row(_("Default Shipping Company:"), 'default_ship_via', null);
 
-tax_groups_list_row(_("Tax Group:"), 'tax_group_id', null, 31, 30);
+tax_groups_list_row(_("Tax Group:"), 'tax_group_id', null);
 
 yesno_list_row(_("Disable this Branch:"), 'disable_trans', null);
 
-echo "</table>";
-
-echo "</td><td  class='tableseparator'>"; // outer table
-
-echo"<table>";
+table_section(2);
 
 table_section_title(_("GL Accounts"));
 
 // 2006-06-14. Changed gl_al_accounts_list to have an optional all_option 'Use Item Sales Accounts'
-gl_all_accounts_list_row(_("Sales Account:"), 'sales_account', $_POST['sales_account'], false,
-       false, false, true);
+gl_all_accounts_list_row(_("Sales Account:"), 'sales_account', null, false, false, true);
 
-gl_all_accounts_list_row(_("Sales Discount Account:"), 'sales_discount_account', $_POST['sales_discount_account']);
+gl_all_accounts_list_row(_("Sales Discount Account:"), 'sales_discount_account');
 
-gl_all_accounts_list_row(_("Accounts Receivable Account:"), 'receivables_account', $_POST['receivables_account']);
+gl_all_accounts_list_row(_("Accounts Receivable Account:"), 'receivables_account');
 
-gl_all_accounts_list_row(_("Prompt Payment Discount Account:"), 'payment_discount_account', $_POST['payment_discount_account']);
+gl_all_accounts_list_row(_("Prompt Payment Discount Account:"), 'payment_discount_account');
 
 table_section_title(_("Addresses"));
 
-textarea_row(_("Mailing Address:"), 'br_post_address',$_POST['br_post_address'], 35, 5);
-
-textarea_row(_("Billing Address:"), 'br_address', $_POST['br_address'], 35, 5);
+textarea_row(_("Mailing Address:"), 'br_post_address', null, 35, 5);
 
-end_table();
+textarea_row(_("Billing Address:"), 'br_address', null, 35, 5);
 
-end_table(1); // outer table
+end_outer_table(1);
 
-submit_add_or_update_center(isset($_POST['New']));
+submit_add_or_update_center($selected_id == -1, '', 'both');
 
 end_form();