Merged changes from main trunk up to version_2_1_4
[fa-stable.git] / purchasing / manage / suppliers.php
index fb2a05948f277a9ee449ffc997bc455667784b6e..809ebb3cab29ecedf8d35e120f12f54b0e410501 100644 (file)
@@ -1,19 +1,19 @@
 <?php
 /**********************************************************************
     Copyright (C) FrontAccounting, LLC.
-       Released under the terms of the GNU Affero General Public License,
-       AGPL, as published by the Free Software Foundation, either version 
-       of the License, or (at your option) any later version.
+       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/agpl-3.0.html>.
+    See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 $page_security=5;
 $path_to_root="../..";
 include($path_to_root . "/includes/session.inc");
 
-page(_("Suppliers"));
+page(_("Suppliers"), @$_REQUEST['popup']);
 
 //include($path_to_root . "/includes/date_functions.inc");
 
@@ -58,9 +58,11 @@ if (isset($_POST['submit']))
                 fax=".db_escape($_POST['fax']) . ",
                 gst_no=".db_escape($_POST['gst_no']) . ",
                 email=".db_escape($_POST['email']) . ",
+                website=".db_escape($_POST['website']) . ",
                 contact=".db_escape($_POST['contact']) . ",
+                supp_account_no=".db_escape($_POST['supp_account_no']) . ",
                 bank_account=".db_escape($_POST['bank_account']) . ",
-                credit_limit=".db_escape($_POST['credit_limit']) . ",
+                credit_limit=".input_num('credit_limit', 0) . ",
                 dimension_id=".db_escape($_POST['dimension_id']) . ",
                 dimension2_id=".db_escape($_POST['dimension2_id']) . ",
                 curr_code=".db_escape($_POST['curr_code']).",
@@ -68,17 +70,22 @@ if (isset($_POST['submit']))
                                payable_account=".db_escape($_POST['payable_account']) . ",
                                purchase_account=".db_escape($_POST['purchase_account']) . ",
                                payment_discount_account=".db_escape($_POST['payment_discount_account']) . ",
+                notes=".db_escape($_POST['notes']) . ",
                                tax_group_id=".db_escape($_POST['tax_group_id']) . " WHERE supplier_id = '" . $_POST['supplier_id'] . "'";
 
                        db_query($sql,"The supplier could not be updated");
+                       update_record_status($_POST['supplier_id'], $_POST['inactive'],
+                               'suppliers', 'supplier_id');
+
+                       $Ajax->activate('supplier_id'); // in case of status change
                        display_notification(_("Supplier has been updated."));
                } 
                else 
                {
 
-                       $sql = "INSERT INTO ".TB_PREF."suppliers (supp_name, address, supp_address, phone, fax, gst_no, email, 
-                               contact, bank_account, credit_limit, dimension_id, dimension2_id, curr_code,
-                               payment_terms, payable_account, purchase_account, payment_discount_account, tax_group_id)
+                       $sql = "INSERT INTO ".TB_PREF."suppliers (supp_name, address, supp_address, phone, fax, gst_no, email, website,
+                               contact, supp_account_no, bank_account, credit_limit, dimension_id, dimension2_id, curr_code,
+                               payment_terms, payable_account, purchase_account, payment_discount_account, notes, tax_group_id)
                                VALUES (".db_escape($_POST['supp_name']). ", "
                                .db_escape($_POST['address']) . ", "
                                .db_escape($_POST['supp_address']) . ", "
@@ -86,9 +93,11 @@ if (isset($_POST['submit']))
                                .db_escape($_POST['fax']). ", "
                                .db_escape($_POST['gst_no']). ", "
                                .db_escape($_POST['email']). ", "
+                               .db_escape($_POST['website']). ", "
                                .db_escape($_POST['contact']). ", "
+                               .db_escape($_POST['supp_account_no']). ", "
                                .db_escape($_POST['bank_account']). ", "
-                               .db_escape($_POST['credit_limit']). ", "
+                               .input_num('credit_limit',0). ", "
                                .db_escape($_POST['dimension_id']). ", "
                                .db_escape($_POST['dimension2_id']). ", "
                                .db_escape($_POST['curr_code']). ", "
@@ -96,6 +105,7 @@ if (isset($_POST['submit']))
                                .db_escape($_POST['payable_account']). ", "
                                .db_escape($_POST['purchase_account']). ", "
                                .db_escape($_POST['payment_discount_account']). ", "
+                               .db_escape($_POST['notes']). ", "
                                .db_escape($_POST['tax_group_id']). ")";
 
                        db_query($sql,"The supplier could not be added");
@@ -146,10 +156,6 @@ elseif (isset($_POST['delete']) && $_POST['delete'] != "")
                $Ajax->activate('_page_body');
        } //end if Delete supplier
 }
-elseif (isset($_POST['select']))
-{
-       context_return(array('supplier_id' => $_POST['supplier_id']));
-}
 
 start_form();
 
@@ -157,9 +163,16 @@ if (db_has_suppliers())
 {
        start_table("", 3);
 //     start_table("class = 'tablestyle_noborder'");
-       supplier_list_row(_("Select a supplier: "), 'supplier_id', null,
-                 _('New supplier'), true);
+       start_row();
+       supplier_list_cells(_("Select a supplier: "), 'supplier_id', null,
+                 _('New supplier'), true, check_value('show_inactive'));
+       check_cells(_("Show inactive:"), 'show_inactive', null, true);
+       end_row();
        end_table();
+       if (get_post('_show_inactive_update')) {
+               $Ajax->activate('supplier_id');
+               set_focus('supplier_id');
+       }
 } 
 else 
 {
@@ -182,34 +195,39 @@ if (!$new_supplier)
        $_POST['fax']  = $myrow["fax"];
        $_POST['gst_no']  = $myrow["gst_no"];
        $_POST['email']  = $myrow["email"];
+       $_POST['website']  = $myrow["website"];
        $_POST['contact']  = $myrow["contact"];
+       $_POST['supp_account_no']  = $myrow["supp_account_no"];
        $_POST['bank_account']  = $myrow["bank_account"];
        $_POST['dimension_id']  = $myrow["dimension_id"];
        $_POST['dimension2_id']  = $myrow["dimension2_id"];
        $_POST['curr_code']  = $myrow["curr_code"];
        $_POST['payment_terms']  = $myrow["payment_terms"];
-       $_POST['credit_limit']  = $myrow["credit_limit"];
+       $_POST['credit_limit']  = price_format($myrow["credit_limit"]);
        $_POST['tax_group_id'] = $myrow["tax_group_id"];
        $_POST['payable_account']  = $myrow["payable_account"];
        $_POST['purchase_account']  = $myrow["purchase_account"];
        $_POST['payment_discount_account'] = $myrow["payment_discount_account"];
-
+       $_POST['notes']  = $myrow["notes"];
+       $_POST['inactive'] = $myrow["inactive"];
 } 
 else 
 {
-       $_POST['supp_name'] = $_POST['address'] = $_POST['supp_address'] = $_POST['tax_group_id']  = '';
+       $_POST['supp_name'] = $_POST['address'] = $_POST['supp_address'] = $_POST['tax_group_id']  = 
+               $_POST['website'] = $_POST['supp_account_no'] = $_POST['notes'] = '';
        $_POST['dimension_id'] = 0;
        $_POST['dimension2_id'] = 0;
        $_POST['sales_type'] = -1;
        $_POST['email'] = $_POST['phone'] = $_POST['fax'] = $_POST['gst_no'] = $_POST['contact'] = $_POST['bank_account'] = '';
        $_POST['payment_terms']  = '';
-       $_POST['credit_limit']  = "";
+       $_POST['credit_limit']  = price_format(0);
 
        $company_record = get_company_prefs();
        $_POST['curr_code']  = $company_record["curr_default"];
        $_POST['payable_account'] = $company_record["creditors_act"];
        $_POST['purchase_account'] = $company_record["default_cogs_act"];
        $_POST['payment_discount_account'] = $company_record['pyt_discount_act'];
+       $_POST['inactive'] = 0;
 }
 
 table_section_title(_("Name and Contact"));
@@ -221,6 +239,8 @@ text_row(_("Phone Number:"), 'phone', null, 42, 40);
 text_row(_("Fax Number:"), 'fax', null, 42, 40);
 
 email_row(_("E-mail:"), 'email', null, 35, 55);
+link_row(_("Website:"), 'website', null, 35, 55);
+text_row(_("Our Customer No:"), 'supp_account_no', null, 42, 40);
 
 table_section_title(_("Addresses"));
 textarea_row(_("Mailing Address:"), 'address', null, 35, 5);
@@ -267,6 +287,9 @@ if ($dim < 1)
        hidden('dimension_id', 0);
 if ($dim < 2)
        hidden('dimension2_id', 0);
+table_section_title(_("General"));
+textarea_row(_("General Notes:"), 'notes', null, 35, 5);
+record_status_list_row(_("Supplier status:"), 'inactive');
 
 end_outer_table(1);
 
@@ -275,15 +298,16 @@ if (!$new_supplier)
 {
        submit_center_first('submit', _("Update Supplier"), 
          _('Update supplier data'), true);
-       submit_return('select', _("Return"), _("Select this supplier and return to document entry."), true);
+       submit_return('select', get_post('supplier_id'), _("Select this supplier and return to document entry."));
        submit_center_last('delete', _("Delete Supplier"), 
          _('Delete supplier data if have been never used'), true);
 }
 else 
 {
-       submit_center('submit', _("Add New Supplier Details"), true, '', true);
+       submit_center('submit', _("Add New Supplier Details"), true, '', 'default');
 }
 div_end();
+hidden('popup', @$_REQUEST['popup']);
 end_form();
 
 end_page();