X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=taxes%2Ftax_types.php;h=c826ae4847dcc6e97b1a70e3760ea26e85c41b78;hb=48589f9ce6c51bb25e2fa8ed83c57d9dfa485e44;hp=adfa7b9df70ea0797cb1fdde45fddb3969e7e614;hpb=e82fa1f01d7f0d7706b9d3e2efaa9a31cc0777f6;p=fa-stable.git diff --git a/taxes/tax_types.php b/taxes/tax_types.php index adfa7b9d..c826ae48 100644 --- a/taxes/tax_types.php +++ b/taxes/tax_types.php @@ -1,9 +1,19 @@ . +***********************************************************************/ +$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"); @@ -13,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.")); @@ -26,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; } @@ -35,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'; } @@ -55,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.")); @@ -85,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; @@ -109,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")); - edit_button_cell("Delete".$myrow["id"], _("Delete")); + 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) { @@ -148,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(); -?>