X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=taxes%2Ftax_types.php;h=c826ae4847dcc6e97b1a70e3760ea26e85c41b78;hb=7e6e0807990447d2977b970c3a0fd28dc9250194;hp=6639e05a8eddaaeebe8588b6df010506d83b2523;hpb=a5242af68e65661edb7175412444dce536a7f311;p=fa-stable.git diff --git a/taxes/tax_types.php b/taxes/tax_types.php index 6639e05a..c826ae48 100644 --- a/taxes/tax_types.php +++ b/taxes/tax_types.php @@ -9,11 +9,11 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License here . ***********************************************************************/ -$page_security = 3; -$path_to_root=".."; +$page_security = 'SA_TAXRATES'; +$path_to_root = ".."; include($path_to_root . "/includes/session.inc"); -page(_("Tax Types")); +page(_($help_context = "Tax Types")); include_once($path_to_root . "/includes/ui.inc"); include_once($path_to_root . "/taxes/db/tax_types_db.inc"); @@ -23,6 +23,8 @@ simple_page_mode(true); function can_process() { + global $selected_id; + if (strlen($_POST['name']) == 0) { display_error(_("The tax type name cannot be empty.")); @@ -36,6 +38,11 @@ function can_process() return false; } + if (!is_tax_gl_unique(get_post('sales_gl_code'), get_post('purchasing_gl_code'), $selected_id)) { + display_error( _("Selected GL Accounts cannot be used by another tax type.")); + set_focus('sales_gl_code'); + return false; + } return true; } @@ -45,7 +52,7 @@ if ($Mode=='ADD_ITEM' && can_process()) { add_tax_type($_POST['name'], $_POST['sales_gl_code'], - $_POST['purchasing_gl_code'], input_num('rate')); + $_POST['purchasing_gl_code'], input_num('rate', 0)); display_notification(_('New tax type has been added')); $Mode = 'RESET'; } @@ -65,10 +72,7 @@ if ($Mode=='UPDATE_ITEM' && can_process()) function can_delete($selected_id) { - $sql= "SELECT COUNT(*) FROM ".TB_PREF."tax_group_items WHERE tax_type_id=$selected_id"; - $result = db_query($sql, "could not query tax groups"); - $myrow = db_fetch_row($result); - if ($myrow[0] > 0) + if (key_in_foreign_table($selected_id, 'tax_group_items', 'tax_type_id')) { display_error(_("Cannot delete this tax type because tax groups been created referring to it.")); @@ -95,17 +99,22 @@ if ($Mode == 'Delete') if ($Mode == 'RESET') { $selected_id = -1; + $sav = get_post('show_inactive'); unset($_POST); + $_POST['show_inactive'] = $sav; } //----------------------------------------------------------------------------------- -$result = get_all_tax_types(); +$result = get_all_tax_types(check_value('show_inactive')); start_form(); -start_table($table_style); + +display_note(_("To avoid problems with manual journal entry all tax types should have unique Sales/Purchasing GL accounts."), 0, 1); +start_table(TABLESTYLE); $th = array(_("Description"), _("Default Rate (%)"), _("Sales GL Account"), _("Purchasing GL Account"), "", ""); +inactive_control_column($th); table_header($th); $k = 0; @@ -119,22 +128,18 @@ while ($myrow = db_fetch($result)) label_cell($myrow["sales_gl_code"] . " " . $myrow["SalesAccountName"]); label_cell($myrow["purchasing_gl_code"] . " " . $myrow["PurchasingAccountName"]); + inactive_control_cell($myrow["id"], $myrow["inactive"], 'tax_types', 'id'); edit_button_cell("Edit".$myrow["id"], _("Edit")); delete_button_cell("Delete".$myrow["id"], _("Delete")); end_row(); } -end_table(); - -end_form(); -echo '
'; - +inactive_control_row($th); +end_table(1); //----------------------------------------------------------------------------------- -start_form(); - -start_table($table_style2); +start_table(TABLESTYLE2); if ($selected_id != -1) { @@ -158,10 +163,9 @@ gl_all_accounts_list_row(_("Purchasing GL Account:"), 'purchasing_gl_code', null end_table(1); -submit_add_or_update_center($selected_id == -1, '', true); +submit_add_or_update_center($selected_id == -1, '', 'both'); end_form(); end_page(); -?>