X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=taxes%2Ftax_groups.php;h=cac3520b090dc3dff03c2f87afcb0c019597faa7;hb=5c17df61be0c76370e2438f932acca23cd4efa31;hp=e3393912e3bc81750b629704d11047d2a97f8d56;hpb=da8311619dd73feae101d246a1957b972e00cbd2;p=fa-stable.git diff --git a/taxes/tax_groups.php b/taxes/tax_groups.php index e3393912..cac3520b 100644 --- a/taxes/tax_groups.php +++ b/taxes/tax_groups.php @@ -1,11 +1,20 @@ . +***********************************************************************/ +$page_security = 'SA_TAXGROUPS'; +$path_to_root = ".."; include($path_to_root . "/includes/session.inc"); -page(_("Tax Groups")); +page(_($help_context = "Tax Groups")); include_once($path_to_root . "/includes/data_checks.inc"); include_once($path_to_root . "/includes/ui.inc"); @@ -13,22 +22,13 @@ include_once($path_to_root . "/includes/ui.inc"); include_once($path_to_root . "/taxes/db/tax_groups_db.inc"); include_once($path_to_root . "/taxes/db/tax_types_db.inc"); -if (isset($_GET['selected_id'])) -{ - $selected_id = $_GET['selected_id']; -} -elseif(isset($_POST['selected_id'])) -{ - $selected_id = $_POST['selected_id']; -} -else - $selected_id = -1; +simple_page_mode(true); check_db_has_tax_types(_("There are no tax types defined. Define tax types before defining tax groups.")); //----------------------------------------------------------------------------------- -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 @@ -38,22 +38,8 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM'])) { $input_error = 1; display_error(_("The tax group name cannot be empty.")); + set_focus('name'); } - else - { - // make sure any entered rates are valid - for ($i = 0; $i < 5; $i++) - { - if (isset($_POST['tax_type_id' . $i]) && - $_POST['tax_type_id' . $i] != reserved_words::get_all_numeric() && - (!is_numeric($_POST['rate' . $i]) || $_POST['rate' . $i] < 0)) - { - display_error( _("An entered tax rate is invalid or less than zero.")); - $input_error = 1; - break; - } - } - } if ($input_error != 1) { @@ -61,36 +47,26 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM'])) // create an array of the taxes and array of rates $taxes = array(); $rates = array(); - $included = array(); - - for ($i = 0; $i < 5; $i++) - { - if (isset($_POST['tax_type_id' . $i]) && - $_POST['tax_type_id' . $i] != reserved_words::get_any_numeric()) - { - $taxes[] = $_POST['tax_type_id' . $i]; - $rates[] = $_POST['rate' . $i]; - if (isset($_POST['included' . $i])) - $included[] = 1; - else - $included[] = 0; - } - } + while (($id = find_submit('tax_type_id'))!=-1) + { + $taxes[] = $id; + $rates[] = get_tax_type_default_rate($id); + unset($_POST['tax_type_id' . $id]); + } if ($selected_id != -1) { - - update_tax_group($selected_id, $_POST['name'], $_POST['tax_shipping'], $taxes, - $rates, $included); - + update_tax_group($selected_id, $_POST['name'], $_POST['tax_shipping'], $taxes, + $rates); + display_notification(_('Selected tax group has been updated')); } else { - - add_tax_group($_POST['name'], $_POST['tax_shipping'], $taxes, $rates, $included); + add_tax_group($_POST['name'], $_POST['tax_shipping'], $taxes, $rates); + display_notification(_('New tax group has been added')); } - meta_forward($_SERVER['PHP_SELF']); + $Mode = 'RESET'; } } @@ -100,21 +76,15 @@ function can_delete($selected_id) { if ($selected_id == -1) return false; - $sql = "SELECT COUNT(*) FROM ".TB_PREF."cust_branch WHERE tax_group_id=$selected_id"; - $result = db_query($sql, "could not query customers"); - $myrow = db_fetch_row($result); - if ($myrow[0] > 0) + if (key_in_foreign_table($selected_id, 'cust_branch', 'tax_group_id')) { - display_note(_("Cannot delete this tax group because customer branches been created referring to it.")); + display_error(_("Cannot delete this tax group because customer branches been created referring to it.")); return false; } - $sql = "SELECT COUNT(*) FROM ".TB_PREF."suppliers WHERE tax_group_id=$selected_id"; - $result = db_query($sql, "could not query suppliers"); - $myrow = db_fetch_row($result); - if ($myrow[0] > 0) + if (key_in_foreign_table($selected_id, 'suppliers', 'tax_group_id')) { - display_note(_("Cannot delete this tax group because suppliers been created referring to it.")); + display_error(_("Cannot delete this tax group because suppliers been created referring to it.")); return false; } @@ -125,22 +95,35 @@ function can_delete($selected_id) //----------------------------------------------------------------------------------- -if (isset($_GET['delete'])) +if ($Mode == 'Delete') { if (can_delete($selected_id)) { delete_tax_group($selected_id); - meta_forward($_SERVER['PHP_SELF']); + display_notification(_('Selected tax group has been deleted')); } + $Mode = 'RESET'; } +if ($Mode == 'RESET') +{ + $selected_id = -1; + $sav = get_post('show_inactive'); + unset($_POST); + if($sav) + $_POST['show_inactive'] = $sav; +} //----------------------------------------------------------------------------------- -$result = get_all_tax_groups(); +$result = get_all_tax_groups(check_value('show_inactive')); + +start_form(); + +start_table(TABLESTYLE); +$th = array(_("Description"), _("Shipping Tax"), "", ""); +inactive_control_column($th); -start_table($table_style); -$th = array(_("Description"), _("Tax Shipping"), "", ""); table_header($th); $k = 0; @@ -155,86 +138,56 @@ while ($myrow = db_fetch($result)) else label_cell(_("No")); - /*for ($i=0; $i< 5; $i++) - if ($myrow["type" . $i] != reserved_words::get_all_numeric()) - echo "