From: Janusz Dobrowolski Date: Sun, 6 Jul 2008 21:18:22 +0000 (+0000) Subject: Ajax added, default value calculated for new prices X-Git-Tag: v2.4.2~19^2~1929 X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=commitdiff_plain;h=6cf44b7a78d331f6bfbf9e0e080abda65f7e6155;p=fa-stable.git Ajax added, default value calculated for new prices --- diff --git a/inventory/prices.php b/inventory/prices.php index fd74e70a..5a3238ff 100644 --- a/inventory/prices.php +++ b/inventory/prices.php @@ -6,6 +6,8 @@ include_once($path_to_root . "/includes/session.inc"); page(_("Inventory Item Sales prices")); +include_once($path_to_root . "/sales/includes/sales_db.inc"); +include_once($path_to_root . "/sales/includes/db/sales_types_db.inc"); include_once($path_to_root . "/includes/ui.inc"); include_once($path_to_root . "/includes/data_checks.inc"); @@ -17,8 +19,8 @@ check_db_has_stock_items(_("There are no items defined in the system.")); check_db_has_sales_types(_("There are no sales types in the system. Please set up sales types befor entering pricing.")); +simple_page_mode(true); //--------------------------------------------------------------------------------------------------- - $input_error = 0; if (isset($_GET['stock_id'])) @@ -46,25 +48,11 @@ echo "
" . _("Item:"). " "; stock_items_list('stock_id', $_POST['stock_id'], false, true); echo "
"; -// if stock sel has changed, clear the form -if ($_POST['stock_id'] != get_global_stock_item()) -{ - clear_data(); -} - set_global_stock_item($_POST['stock_id']); //---------------------------------------------------------------------------------------------------- -function clear_data() -{ - unset($_POST['PriceID']); - unset($_POST['price']); -} - -//---------------------------------------------------------------------------------------------------- - -if (isset($_POST['updatePrice'])) +if ($Mode=='ADD_ITEM' || $Mode=='UPDATE_ITEM') { if (!check_num('price', 0)) @@ -77,40 +65,55 @@ if (isset($_POST['updatePrice'])) if ($input_error != 1) { - if (isset($_POST['PriceID'])) + if ($selected_id != -1) { //editing an existing price - update_item_price($_POST['PriceID'], $_POST['sales_type_id'], + update_item_price($selected_id, $_POST['sales_type_id'], $_POST['curr_abrev'], input_num('price')); $msg = _("This price has been updated."); } - elseif ($input_error !=1) + else { add_item_price($_POST['stock_id'], $_POST['sales_type_id'], $_POST['curr_abrev'], input_num('price')); - display_note(_("The new price has been added.")); + $msg = _("The new price has been added."); } - clear_data(); + display_notification($msg); + $Mode = 'RESET'; } } //------------------------------------------------------------------------------------------------------ -if (isset($_GET['delete'])) +if ($Mode == 'Delete') { - //the link to delete a selected record was clicked - delete_item_price($_GET['PriceID']); - echo _("The selected price has been deleted."); + delete_item_price($selected_id); + display_notification(_("The selected price has been deleted.")); + $Mode = 'RESET'; +} +if ($Mode == 'RESET') +{ + $selected_id = -1; } + if (isset($_POST['_stock_id_update'])) { $Ajax->activate('price_table'); - $Ajax->activate('price'); + $Ajax->activate('price_details'); +} +if (isset($_POST['_stock_id_update']) || isset($_POST['_sales_type_id_update']) + || isset($_POST['_curr_abrev_update']) ) { + // after change of stock, currency or salestype selector + // display default calculated price for new settings. + // If we have this price already in db it is overwritten later. + $_POST['price'] = price_format(get_price(get_post('stock_id'), + get_post('curr_abrev'), get_post('sales_type_id'))); + $Ajax->activate('price_details'); } //--------------------------------------------------------------------------------------------------- @@ -133,43 +136,43 @@ while ($myrow = db_fetch($prices_list)) label_cell($myrow["curr_abrev"]); label_cell($myrow["sales_type"]); amount_cell($myrow["price"]); - edit_link_cell("PriceID=" . $myrow["id"]. "&Edit=1"); - delete_link_cell("PriceID=" . $myrow["id"]. "&delete=yes"); + edit_button_cell("Edit".$myrow['id'], _("Edit")); + edit_button_cell("Delete".$myrow['id'], _("Delete")); end_row(); } end_table(); -div_end(); -//------------------------------------------------------------------------------------------------ - if (db_num_rows($prices_list) == 0) { display_note(_("There are no prices set up for this part.")); } +div_end(); +//------------------------------------------------------------------------------------------------ echo "
"; -if (isset($_GET['Edit'])) +if ($Mode == 'Edit') { - $myrow = get_stock_price($_GET['PriceID']); - hidden('PriceID', $_GET['PriceID']); + $myrow = get_stock_price($selected_id); $_POST['curr_abrev'] = $myrow["curr_abrev"]; $_POST['sales_type_id'] = $myrow["sales_type_id"]; $_POST['price'] = price_format($myrow["price"]); } +hidden('selected_id', $selected_id); +div_start('price_details'); start_table($table_style2); -currencies_list_row(_("Currency:"), 'curr_abrev', null); +currencies_list_row(_("Currency:"), 'curr_abrev', null, true); -sales_types_list_row(_("Sales Type:"), 'sales_type_id', null); +sales_types_list_row(_("Sales Type:"), 'sales_type_id', null, true); small_amount_row(_("Price:"), 'price', null); end_table(1); -submit_center('updatePrice', _("Add/Update Price")); - +submit_add_or_update_center($selected_id == -1, '', true); +div_end(); end_form(); end_page();