Fixed warnings related to empty item/customer/supplier selector in search modes.
[fa-stable.git] / inventory / cost_update.php
index ba8a39c79ac937cb05cc0786b75305b75f43058e..f4fa70ba0f0fec5cf7b2ecb1b4372a794edd346e 100644 (file)
     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 $page_security = 'SA_STANDARDCOST';
-$path_to_root = "..";
-include_once($path_to_root . "/includes/session.inc");
 
+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 . "/includes/date_functions.inc");
 include_once($path_to_root . "/includes/ui.inc");
 include_once($path_to_root . "/includes/banking.inc");
-include_once($path_to_root . "/includes/manufacturing.inc");
 include_once($path_to_root . "/includes/data_checks.inc");
-
 include_once($path_to_root . "/inventory/includes/inventory_db.inc");
+include_once($path_to_root . "/includes/ui/items_cart.inc");
+
 $js = "";
-if ($use_popup_windows)
+if ($SysPrefs->use_popup_windows)
        $js .= get_js_open_window(900, 500);
-page(_("Inventory Item Cost Update"), false, false, "", $js);
+
+if (isset($_GET['FixedAsset'])) {
+       $_SESSION['page_title'] = _($help_context = "FA Revaluation");
+       $_POST['fixed_asset'] = 1;
+} else {
+       $_SESSION['page_title'] = _($help_context = "Inventory Item Cost Update");
+}
+page($_SESSION['page_title'], false, false, "", $js);
 
 //--------------------------------------------------------------------------------------
 
-check_db_has_costable_items(_("There are no costable inventory items defined in the system (Purchased or manufactured items)."));
+if (get_post('fixed_asset') == 1)
+       check_db_has_disposable_fixed_assets(_("There are no fixed assets defined in the system."));
+else
+       check_db_has_costable_items(_("There are no costable inventory items defined in the system (Purchased or manufactured items)."));
 
 if (isset($_GET['stock_id']))
 {
@@ -35,11 +49,11 @@ if (isset($_GET['stock_id']))
 }
 
 //--------------------------------------------------------------------------------------
+$should_update = false;
 if (isset($_POST['UpdateData']))
 {
+       $old_cost = get_unit_cost($_POST['stock_id']);
 
-       $old_cost = $_POST['OldMaterialCost'] + $_POST['OldLabourCost']
-           + $_POST['OldOverheadCost'];
        $new_cost = input_num('material_cost') + input_num('labour_cost')
             + input_num('overhead_cost');
 
@@ -62,67 +76,76 @@ if (isset($_POST['UpdateData']))
        {
                $update_no = stock_cost_update($_POST['stock_id'],
                    input_num('material_cost'), input_num('labour_cost'),
-                   input_num('overhead_cost'), $old_cost);
+                   input_num('overhead_cost'), $old_cost, 
+        $_POST['refline'], $_POST['memo_']);
 
         display_notification(_("Cost has been updated."));
 
         if ($update_no > 0)
         {
-               display_note(get_gl_view_str(systypes::cost_update(), $update_no, _("View the GL Journal Entries for this Cost Update")), 0, 1);
+               display_notification(get_gl_view_str(ST_COSTUPDATE, $update_no, _("View the GL Journal Entries for this Cost Update")));
         }
+
        }
 }
 
-if (list_updated('stock_id'))
+if (list_updated('stock_id') || $should_update) {
+       unset($_POST['memo_']);
        $Ajax->activate('cost_table');
+}
 //-----------------------------------------------------------------------------------------
 
-start_form();
+$action = $_SERVER['PHP_SELF'];
+if ($page_nested)
+       $action .= "?stock_id=".get_post('stock_id');
+start_form(false, false, $action);
+
+hidden('fixed_asset');
 
 if (!isset($_POST['stock_id']))
        $_POST['stock_id'] = get_global_stock_item();
 
-echo "<center>" . _("Item:"). "&nbsp;";
-stock_costable_items_list('stock_id', $_POST['stock_id'], false, true);
+if (!$page_nested)
+{
+       echo "<center>" . _("Item:"). "&nbsp;";
+       if (get_post('fixed_asset') == 1)
+               echo stock_disposable_fa_list('stock_id', $_POST['stock_id'], false, true);
+       else
+               echo stock_items_list('stock_id', $_POST['stock_id'], false, true);
+
+       echo "</center><hr>";
+}
+else
+       br(2);
 
-echo "</center><hr>";
 set_global_stock_item($_POST['stock_id']);
 
-$sql = "SELECT description, units, material_cost, labour_cost,
-       overhead_cost, mb_flag
-       FROM ".TB_PREF."stock_master
-       WHERE stock_id='" . $_POST['stock_id'] . "'
-       GROUP BY description, units, material_cost, labour_cost, overhead_cost, mb_flag";
-$result = db_query($sql);
-check_db_error("The cost details for the item could not be retrieved", $sql);
+$myrow = get_item($_POST['stock_id']);
 
-$myrow = db_fetch($result);
 div_start('cost_table');
-hidden("OldMaterialCost", $myrow["material_cost"]);
-hidden("OldLabourCost", $myrow["labour_cost"]);
-hidden("OldOverheadCost", $myrow["overhead_cost"]);
-
-start_table($table_style2);
 
-$_POST['material_cost'] = price_format($myrow["material_cost"]);
-$_POST['labour_cost'] = price_format($myrow["labour_cost"]);
-$_POST['overhead_cost'] = price_format($myrow["overhead_cost"]);
+start_table(TABLESTYLE2);
+$dec1 = $dec2 = $dec3 = 0;
+if ($myrow) {
+       $_POST['material_cost'] = price_decimal_format($myrow["material_cost"], $dec1);
+       $_POST['labour_cost'] = price_decimal_format($myrow["labour_cost"], $dec2);
+       $_POST['overhead_cost'] = price_decimal_format($myrow["overhead_cost"], $dec3);
+}
 
-amount_row(_("Standard Material Cost Per Unit"), "material_cost",
-       null, "class='tableheader2'");
+amount_row(_("Unit cost"), "material_cost", null, "class='tableheader2'", null, $dec1);
 
-if ($myrow["mb_flag"]=='M')
+if ($myrow && $myrow["mb_flag"]=='M')
 {
-       amount_row(_("Standard Labour Cost Per Unit"), "labour_cost",
-               null, "class='tableheader2'");
-       amount_row(_("Standard Overhead Cost Per Unit"), "overhead_cost",
-               null, "class='tableheader2'");
+       amount_row(_("Standard Labour Cost Per Unit"), "labour_cost", null, "class='tableheader2'", null, $dec2);
+       amount_row(_("Standard Overhead Cost Per Unit"), "overhead_cost", null, "class='tableheader2'", null, $dec3);
 }
 else
 {
        hidden("labour_cost", 0);
        hidden("overhead_cost", 0);
 }
+refline_list_row(_("Reference line:"), 'refline', ST_COSTUPDATE, null, false, get_post('fixed_asset'));
+textarea_row(_("Memo"), 'memo_', null, 40, 4);
 
 end_table(1);
 div_end();
@@ -130,5 +153,3 @@ submit_center('UpdateData', _("Update"), true, false, 'default');
 
 end_form();
 end_page();
-
-?>