X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=inventory%2Fmanage%2Fitem_categories.php;h=78c21944d49f1a7c824d87eab58b749b758567d8;hb=0b253e5e0d23400838d3bfb4f27fb3fb2637b3ab;hp=4474dc976f35c2d79bdc3c466cf9f2613a20ec08;hpb=6183e9450dcd7e4c747889c10903f6ff1b0add33;p=fa-stable.git diff --git a/inventory/manage/item_categories.php b/inventory/manage/item_categories.php index 4474dc97..78c21944 100644 --- a/inventory/manage/item_categories.php +++ b/inventory/manage/item_categories.php @@ -1,5 +1,14 @@ . +***********************************************************************/ $page_security = 11; $path_to_root="../.."; include($path_to_root . "/includes/session.inc"); @@ -10,18 +19,10 @@ include_once($path_to_root . "/includes/ui.inc"); include_once($path_to_root . "/inventory/includes/inventory_db.inc"); -if (isset($_GET['selected_id'])) -{ - $selected_id = strtoupper($_GET['selected_id']); -} -else if (isset($_POST['selected_id'])) -{ - $selected_id = strtoupper($_POST['selected_id']); -} - +simple_page_mode(true); //---------------------------------------------------------------------------------- -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 @@ -36,21 +37,32 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM'])) if ($input_error !=1) { - if (isset($selected_id)) + if ($selected_id != -1) { - update_item_category($selected_id, $_POST['description']); + update_item_category($selected_id, $_POST['description'], + $_POST['tax_type_id'], $_POST['sales_account'], + $_POST['cogs_account'], $_POST['inventory_account'], + $_POST['adjustment_account'], $_POST['assembly_account'], + $_POST['units'], $_POST['mb_flag'], $_POST['dim1'], $_POST['dim2']); + display_notification(_('Selected item category has been updated')); } else { - add_item_category($_POST['description']); + add_item_category($_POST['description'], + $_POST['tax_type_id'], $_POST['sales_account'], + $_POST['cogs_account'], $_POST['inventory_account'], + $_POST['adjustment_account'], $_POST['assembly_account'], + $_POST['units'], $_POST['mb_flag'], $_POST['dim1'], + $_POST['dim2']); + display_notification(_('New item category has been added')); } - meta_forward($_SERVER['PHP_SELF']); + $Mode = 'RESET'; } } //---------------------------------------------------------------------------------- -if (isset($_GET['delete'])) +if ($Mode == 'Delete') { // PREVENT DELETES IF DEPENDENT RECORDS IN 'stock_master' @@ -60,22 +72,40 @@ if (isset($_GET['delete'])) if ($myrow[0] > 0) { display_error(_("Cannot delete this item category because items have been created using this item category.")); - } else { delete_item_category($selected_id); - meta_forward($_SERVER['PHP_SELF']); + display_notification(_('Selected item category has been deleted')); } + $Mode = 'RESET'; } +if ($Mode == 'RESET') +{ + $selected_id = -1; + $sav = get_post('show_inactive'); + unset($_POST); + $_POST['show_inactive'] = $sav; +} +if (list_updated('mb_flag')) { + $Ajax->activate('details'); +} //---------------------------------------------------------------------------------- -$sql = "SELECT * FROM ".TB_PREF."stock_category"; +$sql = "SELECT c.*, t.name as tax_name FROM ".TB_PREF."stock_category c, " + .TB_PREF."item_tax_types t WHERE c.dflt_tax_type=t.id"; +if (!check_value('show_inactive')) $sql .= " AND !inactive"; + $result = db_query($sql, "could not get stock categories"); -start_table("$table_style width=30%"); -$th = array(_("Name"), "", ""); +start_form(); +start_table("$table_style width=80%"); +$th = array(_("Name"), _("Tax type"), _("Units"), _("Type"), _("Sales Act"), +_("COGS Account"), _("Inventory Account"), _("Adjustment Account"), +_("Assembly Account"), "", ""); +inactive_control_column($th); + table_header($th); $k = 0; //row colour counter @@ -85,39 +115,117 @@ while ($myrow = db_fetch($result)) alt_table_row_color($k); label_cell($myrow["description"]); - edit_link_cell(SID."selected_id=$myrow[0]"); - delete_link_cell(SID."selected_id=$myrow[0]&delete=yes"); + label_cell($myrow["tax_name"]); + label_cell($myrow["dflt_units"], "align=center"); + label_cell($stock_types[$myrow["dflt_mb_flag"]]); + label_cell($myrow["dflt_sales_act"], "align=center"); + label_cell($myrow["dflt_cogs_act"], "align=center"); + label_cell($myrow["dflt_inventory_act"], "align=center"); + label_cell($myrow["dflt_adjustment_act"], "align=center"); + label_cell($myrow["dflt_assembly_act"], "align=center"); + inactive_control_cell($myrow["category_id"], $myrow["inactive"], 'stock_category', 'category_id'); + edit_button_cell("Edit".$myrow["category_id"], _("Edit")); + delete_button_cell("Delete".$myrow["category_id"], _("Delete")); end_row(); } +inactive_control_row($th); end_table(); - +echo '
'; //---------------------------------------------------------------------------------- -hyperlink_no_params($_SERVER['PHP_SELF'], _("New Item Category")); +div_start('details'); +start_table($table_style2); -start_form(); +if ($selected_id != -1) +{ + if ($Mode == 'Edit') { + //editing an existing item category + $myrow = get_item_category($selected_id); + + $_POST['category_id'] = $myrow["category_id"]; + $_POST['description'] = $myrow["description"]; + $_POST['tax_type_id'] = $myrow["dflt_tax_type"]; + $_POST['sales_account'] = $myrow["dflt_sales_act"]; + $_POST['cogs_account'] = $myrow["dflt_cogs_act"]; + $_POST['inventory_account'] = $myrow["dflt_inventory_act"]; + $_POST['adjustment_account'] = $myrow["dflt_adjustment_act"]; + $_POST['assembly_account'] = $myrow["dflt_assembly_act"]; + $_POST['units'] = $myrow["dflt_units"]; + $_POST['mb_flag'] = $myrow["dflt_mb_flag"]; + $_POST['dim1'] = $myrow["dflt_dim1"]; + $_POST['dim2'] = $myrow["dflt_dim2"]; + } + hidden('selected_id', $selected_id); + hidden('category_id'); +} else { + $_POST['long_description'] = ''; + $_POST['description'] = ''; -start_table("class='tablestyle_noborder'"); + $company_record = get_company_prefs(); -if (isset($selected_id)) -{ - //editing an existing item category + if (get_post('inventory_account') == "") + $_POST['inventory_account'] = $company_record["default_inventory_act"]; - $myrow = get_item_category($selected_id); + if (get_post('cogs_account') == "") + $_POST['cogs_account'] = $company_record["default_cogs_act"]; - $_POST['category_id'] = $myrow["category_id"]; - $_POST['description'] = $myrow["description"]; + if (get_post('sales_account') == "") + $_POST['sales_account'] = $company_record["default_inv_sales_act"]; + + if (get_post('adjustment_account') == "") + $_POST['adjustment_account'] = $company_record["default_adj_act"]; + + if (get_post('assembly_account') == "") + $_POST['assembly_account'] = $company_record["default_assembly_act"]; - hidden('selected_id', $selected_id); - hidden('category_id', $_POST['category_id']); } text_row(_("Category Name:"), 'description', null, 30, 30); -end_table(1); +table_section_title(_("Default values for new items")); + +item_tax_types_list_row(_("Item Tax Type:"), 'tax_type_id', null); + +stock_item_types_list_row(_("Item Type:"), 'mb_flag', null, true); + +stock_units_list_row(_("Units of Measure:"), 'units', null); + +gl_all_accounts_list_row(_("Sales Account:"), 'sales_account', $_POST['sales_account']); + +gl_all_accounts_list_row(_("Inventory Account:"), 'inventory_account', $_POST['inventory_account']); + +if (!is_service($_POST['mb_flag'])) +{ + gl_all_accounts_list_row(_("C.O.G.S. Account:"), 'cogs_account', $_POST['cogs_account']); + gl_all_accounts_list_row(_("Inventory Adjustments Account:"), 'adjustment_account', $_POST['adjustment_account']); +} +else +{ + hidden('cogs_account', $_POST['cogs_account']); + hidden('adjustment_account', $_POST['adjustment_account']); +} + +if (is_manufactured($_POST['mb_flag'])) + gl_all_accounts_list_row(_("Item Assembly Costs Account:"), 'assembly_account', $_POST['assembly_account']); +else + hidden('assembly_account', $_POST['assembly_account']); -submit_add_or_update_center(!isset($selected_id)); +$dim = get_company_pref('use_dimension'); +if ($dim >= 1) +{ + dimensions_list_row(_("Dimension")." 1", 'dim1', null, true, " ", false, 1); + if ($dim > 1) + dimensions_list_row(_("Dimension")." 2", 'dim2', null, true, " ", false, 2); +} +if ($dim < 1) + hidden('dim1', 0); +if ($dim < 2) + hidden('dim2', 0); + +end_table(1); +div_end(); +submit_add_or_update_center($selected_id == -1, '', 'both'); end_form();