Feature 5388: Print Invoices (documents) list gets too long. Fixed by default 180...
[fa-stable.git] / admin / gl_setup.php
index cb53aba93376fb9fc89bc688342c7fe291d9b0cf..3b0868160c51b43906857a37e408dc9c14425c4b 100644 (file)
@@ -13,7 +13,11 @@ $page_security = 'SA_GLSETUP';
 $path_to_root="..";
 include($path_to_root . "/includes/session.inc");
 
-page(_($help_context = "System and General GL Setup"));
+$js = "";
+if ($SysPrefs->use_popup_windows && $SysPrefs->use_popup_search)
+       $js .= get_js_open_window(900, 500);
+
+page(_($help_context = "System and General GL Setup"), false, false, "", $js);
 
 include_once($path_to_root . "/includes/date_functions.inc");
 include_once($path_to_root . "/includes/ui.inc");
@@ -25,7 +29,42 @@ include_once($path_to_root . "/admin/db/company_db.inc");
 
 function can_process()
 {
-       if (!check_num('po_over_receive', 0, 100))
+    if (!check_num('past_due_days', 0, 100))
+    {
+        display_error(_("The past due days interval allowance must be between 0 and 100."));
+        set_focus('past_due_days');
+        return false;
+    }
+
+    if (!check_num('default_quote_valid_days', 0))
+    {
+        display_error(_("Quote Valid Days is not valid number."));
+        set_focus('default_quote_valid_days');
+        return false;
+    }
+
+    if (!check_num('default_delivery_required', 0))
+    {
+        display_error(_("Delivery Required By is not valid number."));
+        set_focus('default_delivery_required');
+        return false;
+    }
+
+    if (!check_num('default_receival_required', 0))
+    {
+        display_error(_("Receival Required By is not valid number."));
+        set_focus('default_receival_required');
+        return false;
+    }
+
+    if (!check_num('default_workorder_required', 0))
+    {
+        display_error(_("Work Order Required By After is not valid number."));
+        set_focus('default_workorder_required');
+        return false;
+    }  
+
+    if (!check_num('po_over_receive', 0, 100))
        {
                display_error(_("The delivery over-receive allowance must be between 0 and 100."));
                set_focus('po_over_receive');
@@ -72,8 +111,8 @@ if (isset($_POST['submit']) && can_process())
        update_company_prefs( get_post( array( 'retained_earnings_act', 'profit_loss_year_act',
                'debtors_act', 'pyt_discount_act', 'creditors_act', 'freight_act', 'deferred_income_act',
                'exchange_diff_act', 'bank_charge_act', 'default_sales_act', 'default_sales_discount_act',
-               'default_prompt_payment_act', 'default_inventory_act', 'default_cogs_act',
-               'default_adj_act', 'default_inv_sales_act', 'default_assembly_act', 'legal_text',
+               'default_prompt_payment_act', 'default_inventory_act', 'default_cogs_act', 'depreciation_period',
+               'default_loss_on_asset_disposal_act', 'default_adj_act', 'default_inv_sales_act', 'default_wip_act', 'legal_text',
                'past_due_days', 'default_workorder_required', 'default_dim_required', 'default_receival_required',
                'default_delivery_required', 'default_quote_valid_days', 'grn_clearing_act', 'tax_algorithm',
                'no_zero_lines_amount', 'show_po_item_codes', 'accounts_alpha', 'loc_notification', 'print_invoice_no',
@@ -94,55 +133,6 @@ start_outer_table(TABLESTYLE2);
 
 table_section(1);
 
-if (get_company_pref('grn_clearing_act') === null) { // available from 2.3.1, can be not defined on pre-2.4 installations
-       set_company_pref('grn_clearing_act', 'glsetup.purchase', 'varchar', 15, 0);
-       refresh_sys_prefs();
-}
-if (get_company_pref('default_receival_required') === null) { // new in 2.4 installations
-       set_company_pref('default_receival_required', 'glsetup.purchase', 'smallint', 6, '10');
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('default_quote_valid_days') === null) { // available from 2.3.23, can be not defined on pre-2.4 installations
-       set_company_pref('default_quote_valid_days', 'glsetup.sales', 'smallint', 6, 30);
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('no_zero_lines_amount') === null) { // new in 2.4 installations
-       set_company_pref('no_zero_lines_amount', 'glsetup.sales', 'tinyint', 1, '1');
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('show_po_item_codes') === null) { // new in 2.4 installations
-       set_company_pref('show_po_item_codes', 'glsetup.purchase', 'tinyint', 1, '0');
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('accounts_alpha') === null) { // new in 2.4 installations
-       set_company_pref('accounts_alpha', 'glsetup.general', 'tinyint', 1, '0');
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('loc_notification') === null) { // new in 2.4 installations
-       set_company_pref('loc_notification', 'glsetup.inventory', 'tinyint', 1, '0');
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('print_invoice_no') === null) { // new in 2.4 installations
-       set_company_pref('print_invoice_no', 'glsetup.sales', 'tinyint', 1, '0');
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('allow_negative_prices') === null) { // new in 2.4 installations
-       set_company_pref('allow_negative_prices', 'glsetup.inventory', 'tinyint', 1, '1');
-       refresh_sys_prefs();
-}
-
-if (get_company_pref('print_item_images_on_quote') === null) { // new in 2.4 installations
-       set_company_pref('print_item_images_on_quote', 'glsetup.inventory', 'tinyint', 1, '0');
-       refresh_sys_prefs();
-}
-
 $myrow = get_company_prefs();
 
 $_POST['retained_earnings_act']  = $myrow["retained_earnings_act"];
@@ -164,7 +154,7 @@ $_POST['default_inventory_act'] = $myrow["default_inventory_act"];
 $_POST['default_cogs_act'] = $myrow["default_cogs_act"];
 $_POST['default_adj_act'] = $myrow["default_adj_act"];
 $_POST['default_inv_sales_act'] = $myrow['default_inv_sales_act'];
-$_POST['default_assembly_act'] = $myrow['default_assembly_act'];
+$_POST['default_wip_act'] = $myrow['default_wip_act'];
 
 $_POST['allow_negative_stock'] = $myrow['allow_negative_stock'];
 
@@ -174,7 +164,7 @@ $_POST['past_due_days'] = $myrow['past_due_days'];
 
 $_POST['grn_clearing_act'] = $myrow['grn_clearing_act'];
 
-$_POST['default_credit_limit'] = $myrow['default_credit_limit'];
+$_POST['default_credit_limit'] = price_format($myrow['default_credit_limit']);
 $_POST['legal_text'] = $myrow['legal_text'];
 $_POST['accumulate_shipping'] = $myrow['accumulate_shipping'];
 
@@ -190,6 +180,8 @@ $_POST['loc_notification'] = $myrow['loc_notification'];
 $_POST['print_invoice_no'] = $myrow['print_invoice_no'];
 $_POST['allow_negative_prices'] = $myrow['allow_negative_prices'];
 $_POST['print_item_images_on_quote'] = $myrow['print_item_images_on_quote'];
+$_POST['default_loss_on_asset_disposal_act'] = $myrow['default_loss_on_asset_disposal_act'];
+$_POST['depreciation_period'] = $myrow['depreciation_period'];
 
 //---------------
 
@@ -212,9 +204,15 @@ tax_algorithm_list_row(_("Tax Algorithm:"), 'tax_algorithm', $_POST['tax_algorit
 
 //---------------
 
+table_section_title(_("Dimension Defaults"));
+
+text_row(_("Dimension Required By After:"), 'default_dim_required', $_POST['default_dim_required'], 6, 6, '', "", _("days"));
+
+//----------------
+
 table_section_title(_("Customers and Sales"));
 
-text_row(_("Default Credit Limit:"), 'default_credit_limit', $_POST['default_credit_limit'], 12, 12);
+amount_row(_("Default Credit Limit:"), 'default_credit_limit', $_POST['default_credit_limit']);
 
 yesno_list_row(_("Invoice Identification:"), 'print_invoice_no', $_POST['print_invoice_no'], $name_yes=_("Number"), $name_no=_("Reference"));
 
@@ -250,12 +248,6 @@ text_row(_("Delivery Required By:"), 'default_delivery_required', $_POST['defaul
 
 table_section(2);
 
-table_section_title(_("Dimension Defaults"));
-
-text_row(_("Dimension Required By After:"), 'default_dim_required', $_POST['default_dim_required'], 6, 6, '', "", _("days"));
-
-//----------------
-
 table_section_title(_("Suppliers and Purchasing"));
 
 percent_row(_("Delivery Over-Receive Allowance:"), 'po_over_receive');
@@ -294,7 +286,15 @@ gl_all_accounts_list_row(_("C.O.G.S. Account:"), 'default_cogs_act', $_POST['def
 
 gl_all_accounts_list_row(_("Inventory Adjustments Account:"), 'default_adj_act', $_POST['default_adj_act']);
 
-gl_all_accounts_list_row(_("Item Assembly Costs Account:"), 'default_assembly_act', $_POST['default_assembly_act']);
+gl_all_accounts_list_row(_("WIP Account:"), 'default_wip_act', $_POST['default_wip_act']);
+
+//----------------
+
+table_section_title(_("Fixed Assets Defaults"));
+
+gl_all_accounts_list_row(_("Loss On Asset Disposal Account:"), 'default_loss_on_asset_disposal_act', $_POST['default_loss_on_asset_disposal_act']);
+
+array_selector_row (_("Depreciation Period:"), 'depreciation_period', $_POST['depreciation_period'], array(FA_MONTHLY => _("Monthly"), FA_YEARLY => _("Yearly")));
 
 //----------------