X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=inventory%2Fprices.php;h=40dd11f793dab99bfd143c79d95e6d145659c5b0;hb=777422e8d5a3ba188e7420719e33322098075313;hp=073289c65b3610cb742be9d097111e145835ff0e;hpb=da8311619dd73feae101d246a1957b972e00cbd2;p=fa-stable.git
diff --git a/inventory/prices.php b/inventory/prices.php
index 073289c6..40dd11f7 100644
--- a/inventory/prices.php
+++ b/inventory/prices.php
@@ -1,11 +1,22 @@
.
+***********************************************************************/
+$page_security = 'SA_SALESPRICE';
+$path_to_root = "..";
include_once($path_to_root . "/includes/session.inc");
-page(_("Inventory Item Sales prices"));
+page(_($help_context = "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 +28,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']))
@@ -37,88 +48,93 @@ if (!isset($_POST['curr_abrev']))
//---------------------------------------------------------------------------------------------------
-start_form(false, true);
+start_form();
if (!isset($_POST['stock_id']))
$_POST['stock_id'] = get_global_stock_item();
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();
-}
+echo sales_items_list('stock_id', $_POST['stock_id'], false, true);
+echo "
";
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 (!is_numeric($_POST['price']) || $_POST['price'] == "")
+ if (!check_num('price', 0))
{
$input_error = 1;
display_error( _("The price entered must be numeric."));
+ set_focus('price');
}
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'], $_POST['curr_abrev'], $_POST['price']);
+ 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'], $_POST['price']);
+ 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 (list_updated('stock_id')) {
+ $Ajax->activate('price_table');
+ $Ajax->activate('price_details');
+}
+if (list_updated('stock_id') || isset($_POST['_curr_abrev_update']) || isset($_POST['_sales_type_id_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.
+ unset($_POST['price']);
+ $Ajax->activate('price_details');
+}
-$mb_flag = get_mb_flag($_POST['stock_id']);
+//---------------------------------------------------------------------------------------------------
$prices_list = get_prices($_POST['stock_id']);
+div_start('price_table');
start_table("$table_style width=30%");
$th = array(_("Currency"), _("Sales Type"), _("Price"), "", "");
table_header($th);
$k = 0; //row colour counter
-
-while ($myrow = db_fetch($prices_list))
+$calculated = false;
+while ($myrow = db_fetch($prices_list))
{
alt_table_row_color($k);
@@ -126,43 +142,53 @@ 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"));
+ delete_button_cell("Delete".$myrow['id'], _("Delete"));
end_row();
}
end_table();
-
-//------------------------------------------------------------------------------------------------
-
-if (db_num_rows($prices_list) == 0)
+if (db_num_rows($prices_list) == 0)
{
- display_note(_("There are no prices set up for this part."));
+ if (get_company_pref('add_pct') != -1)
+ $calculated = true;
+ display_note(_("There are no prices set up for this part."), 1);
}
+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'] = $myrow["price"];
+ $_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);
-text_row(_("Price:"), 'price', null, 10, 10);
+if (!isset($_POST['price'])) {
+ $_POST['price'] = price_format(get_kit_price(get_post('stock_id'),
+ get_post('curr_abrev'), get_post('sales_type_id')));
+}
-end_table(1);
+$kit = get_item_code_dflts($_POST['stock_id']);
+small_amount_row(_("Price:"), 'price', null, '', _('per') .' '.$kit["units"]);
-submit_center('updatePrice', _("Add/Update Price"));
+end_table(1);
+if ($calculated)
+ display_note(_("The price is calculated."), 0, 1);
+submit_add_or_update_center($selected_id == -1, '', 'both');
+div_end();
end_form();
end_page();