X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=inventory%2Fincludes%2Fitem_adjustments_ui.inc;h=b132bf3568df02f63a18a04d870472cb91076367;hb=6159819c4115d50fcb52f4ad0c04737af2a28115;hp=b4d8edd56804778c385bbfdb809fe98e85290367;hpb=99730b8d6deb7e81d2f1ebeb2ce7066d27729485;p=fa-stable.git diff --git a/inventory/includes/item_adjustments_ui.inc b/inventory/includes/item_adjustments_ui.inc index b4d8edd5..b132bf35 100644 --- a/inventory/includes/item_adjustments_ui.inc +++ b/inventory/includes/item_adjustments_ui.inc @@ -7,21 +7,10 @@ include_once($path_to_root . "/includes/ui/items_cart.inc"); function add_to_order(&$order, $new_item, $new_item_qty, $standard_cost) { - $allready_on_order = 0; - - foreach ($order->line_items as $order_item) - { - if (strcasecmp($order_item->stock_id, $new_item) == 0) - { - $allready_on_order = 1; - display_error(_("For Part :") . $new_item . " " . "This item is already on this order. You can change the quantity ordered of the existing line if necessary."); - } - } - - if ($allready_on_order != 1) - { - $order->add_to_cart ($new_item, $new_item_qty, $standard_cost); - } /* end of if not already on the order */ + if ($order->find_cart_item($new_item)) + display_error(_("For Part :") . $new_item . " " . "This item is already on this order. You can change the quantity ordered of the existing line if necessary."); + else + $order->add_to_cart (count($order->line_items), $new_item, $new_item_qty, $standard_cost); } //-------------------------------------------------------------------------------- @@ -70,6 +59,7 @@ function display_adjustment_items($title, &$order) global $table_style, $path_to_root; display_heading($title); + div_start('items_table'); start_table("$table_style width=80%"); $th = array(_("Item Code"), _("Item Description"), _("Quantity"), _("Unit"), _("Unit Cost"), _("Total")); @@ -79,90 +69,100 @@ function display_adjustment_items($title, &$order) $total = 0; $k = 0; //row colour counter - foreach ($order->line_items as $stock_item) + $id = find_submit('Edit'); + foreach ($order->line_items as $line_no=>$stock_item) { - $quantity = number_format2($stock_item->quantity,user_qty_dec()); - $total += ($stock_item->standard_cost * $stock_item->quantity); - if (!isset($_GET['Edit']) || $_GET['Edit'] != $stock_item->stock_id) + if ($id != $line_no) { alt_table_row_color($k); - label_cell("$stock_item->stock_id"); + view_stock_status_cell($stock_item->stock_id); label_cell($stock_item->item_description); - label_cell($quantity, "nowrap align=right"); + qty_cell($stock_item->quantity, false, get_qty_dec($stock_item->stock_id)); label_cell($stock_item->units); amount_cell($stock_item->standard_cost); amount_cell($stock_item->standard_cost * $stock_item->quantity); - edit_link_cell(SID . "Edit=$stock_item->stock_id"); - delete_link_cell(SID . "Delete=$stock_item->stock_id"); + edit_button_cell("Edit$line_no", _("Edit"), + _('Edit document line')); + edit_button_cell("Delete$line_no", _("Delete"), + _('Remove line from document')); end_row(); } else { - adjustment_edit_item_controls($order, $stock_item->stock_id); + adjustment_edit_item_controls($order, $line_no); } } - if (!isset($_GET['Edit'])) + if ($id == -1) adjustment_edit_item_controls($order); label_row(_("Total"), number_format2($total,user_price_dec()), "colspan=5", "align=right"); end_table(); + div_end(); } //--------------------------------------------------------------------------------- -function adjustment_edit_item_controls(&$order, $stock_id=null) +function adjustment_edit_item_controls(&$order, $line_no=-1) { + global $Ajax; start_row(); - if (isset($_GET['Edit']) and $stock_id!=null) + $id = find_submit('Edit'); + if ($line_no != -1 && $line_no == $id) { - if (!isset($_POST['stock_id'])) - $_POST['stock_id'] = $order->line_items[$stock_id]->stock_id; - if (!isset($_POST['qty']) OR ($_POST['qty']=="")) - $_POST['qty'] = qty_format($order->line_items[$stock_id]->quantity, $order->line_items[$stock_id]->stock_id, $dec); - if (!isset($_POST['std_cost']) OR ($_POST['std_cost']=="")) - $_POST['std_cost'] = price_format($order->line_items[$stock_id]->standard_cost); - - $_POST['units'] = $order->line_items[$stock_id]->units; + $_POST['stock_id'] = $order->line_items[$id]->stock_id; + $_POST['qty'] = qty_format($order->line_items[$id]->quantity, + $order->line_items[$id]->stock_id, $dec); + $_POST['std_cost'] = price_format($order->line_items[$id]->standard_cost); + $_POST['units'] = $order->line_items[$id]->units; hidden('stock_id', $_POST['stock_id']); label_cell($_POST['stock_id']); - label_cell($order->line_items[$stock_id]->item_description); + label_cell($order->line_items[$id]->item_description, 'nowrap'); + $Ajax->activate('items_table'); } else { - echo ""; - stock_costable_items_list('stock_id', null, false, true); - echo ""; + stock_costable_items_list_cells(null, 'stock_id', null, false, true); + if (list_updated('stock_id')) { + $Ajax->activate('units'); + $Ajax->activate('qty'); + $Ajax->activate('std_cost'); + } $item_info = get_item_edit_info($_POST['stock_id']); - - $_POST['qty'] = qty_format(0, $_POST['stock_id'], $dec); + $dec = $item_info['decimals']; + $_POST['qty'] = number_format2(0, $dec); $_POST['std_cost'] = price_format($item_info["standard_cost"]); $_POST['units'] = $item_info["units"]; } qty_cells(null, 'qty', $_POST['qty'], null, null, $dec); + label_cell($_POST['units'], '', 'units'); - label_cell($_POST['units']); amount_cells(null, 'std_cost', $_POST['std_cost']); label_cell(" "); - if (isset($_GET['Edit'])) + if ($id != -1) { - submit_cells('UpdateItem', _("Update")); - submit_cells('CancelItemChanges', _("Cancel")); + edit_button_cell('UpdateItem', _("Update"), + _('Confirm changes')); + edit_button_cell('CancelItemChanges', _("Cancel"), + _('Cancel changes')); + hidden('LineNo', $line_no); + set_focus('qty'); } else { - submit_cells('AddItem', _("Add Item"), "colspan=2"); + submit_cells('AddItem', _("Add Item"), "colspan=2", + _('Add new item to document'), true); } end_row();