Fixed warnings related to empty item/customer/supplier selector in search modes.
[fa-stable.git] / inventory / prices.php
index 40dd11f793dab99bfd143c79d95e6d145659c5b0..7132eb624c7fab66153285b2cb4e8c6fd38b9445 100644 (file)
     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 $page_security = 'SA_SALESPRICE';
-$path_to_root = "..";
-include_once($path_to_root . "/includes/session.inc");
 
-page(_($help_context = "Inventory Item Sales prices"));
+if (@$_GET['page_level'] == 1)
+       $path_to_root = "../..";
+else   
+       $path_to_root = "..";
 
+include_once($path_to_root . "/includes/session.inc");
 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");
-
 include_once($path_to_root . "/inventory/includes/inventory_db.inc");
 
+$js = "";
+if ($SysPrefs->use_popup_windows && $SysPrefs->use_popup_search)
+       $js .= get_js_open_window(900, 500);
+page(_($help_context = "Inventory Item Sales prices"), false, false, "", $js);
+
 //---------------------------------------------------------------------------------------------------
 
 check_db_has_stock_items(_("There are no items defined in the system."));
@@ -47,16 +53,22 @@ if (!isset($_POST['curr_abrev']))
 }
 
 //---------------------------------------------------------------------------------------------------
-
-start_form();
+$action = $_SERVER['PHP_SELF'];
+if ($page_nested)
+       $action .= "?stock_id=".get_post('stock_id');
+start_form(false, false, $action);
 
 if (!isset($_POST['stock_id']))
        $_POST['stock_id'] = get_global_stock_item();
 
-echo "<center>" . _("Item:"). "&nbsp;";
-echo sales_items_list('stock_id', $_POST['stock_id'], false, true);
-echo "<hr></center>";
-
+if (!$page_nested)
+{
+       echo "<center>" . _("Item:"). "&nbsp;";
+       echo sales_items_list('stock_id', $_POST['stock_id'], false, true, '', array('editable' => false));
+       echo "<hr></center>";
+}
+else
+       br(2);
 set_global_stock_item($_POST['stock_id']);
 
 //----------------------------------------------------------------------------------------------------
@@ -70,6 +82,12 @@ if ($Mode=='ADD_ITEM' || $Mode=='UPDATE_ITEM')
                display_error( _("The price entered must be numeric."));
                set_focus('price');
        }
+       elseif ($Mode == 'ADD_ITEM' && get_stock_price_type_currency($_POST['stock_id'], $_POST['sales_type_id'], $_POST['curr_abrev']))
+       {
+       $input_error = 1;
+       display_error( _("The sales pricing for this item, sales type and currency has already been added."));
+               set_focus('supplier_id');
+       }
 
        if ($input_error != 1)
        {
@@ -128,7 +146,7 @@ if (list_updated('stock_id') || isset($_POST['_curr_abrev_update']) || isset($_P
 $prices_list = get_prices($_POST['stock_id']);
 
 div_start('price_table');
-start_table("$table_style width=30%");
+start_table(TABLESTYLE, "width='30%'");
 
 $th = array(_("Currency"), _("Sales Type"), _("Price"), "", "");
 table_header($th);
@@ -168,8 +186,9 @@ if ($Mode == 'Edit')
 }
 
 hidden('selected_id', $selected_id);
+
 div_start('price_details');
-start_table($table_style2);
+start_table(TABLESTYLE2);
 
 currencies_list_row(_("Currency:"), 'curr_abrev', null, true);
 
@@ -181,7 +200,8 @@ if (!isset($_POST['price'])) {
 }
 
 $kit = get_item_code_dflts($_POST['stock_id']);
-small_amount_row(_("Price:"), 'price', null, '', _('per') .' '.$kit["units"]);
+$units = $kit ? $kit["units"] : '';
+small_amount_row(_("Price:"), 'price', null, '', _('per') .' '.$units);
 
 end_table(1);
 if ($calculated)
@@ -192,4 +212,3 @@ div_end();
 
 end_form();
 end_page();
-?>