X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=inventory%2Fmanage%2Fitems.php;h=0793bb38a82c9d630965215d01d2ead3c770e356;hb=bd8f3d60c65d47e9cf86c4cf39bf48b8d3091153;hp=b5f6534bd5373e1bdaddf5f384ece812b1c8b3ee;hpb=e06cb420675cec10063b341bc402034cfedb7a8c;p=fa-stable.git diff --git a/inventory/manage/items.php b/inventory/manage/items.php index b5f6534b..0793bb38 100644 --- a/inventory/manage/items.php +++ b/inventory/manage/items.php @@ -9,11 +9,11 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License here . ***********************************************************************/ -$page_security = 11; -$path_to_root="../.."; +$page_security = 'SA_ITEM'; +$path_to_root = "../.."; include($path_to_root . "/includes/session.inc"); -page(_("Items"), @$_REQUEST['popup']); +page(_($help_context = "Items"), @$_REQUEST['popup']); include_once($path_to_root . "/includes/date_functions.inc"); include_once($path_to_root . "/includes/ui.inc"); @@ -56,7 +56,7 @@ if (isset($_FILES['pic']) && $_FILES['pic']['name'] != '') $stock_id = $_POST['NewStockID']; $result = $_FILES['pic']['error']; $upload_file = 'Yes'; //Assume all is well to start off with - $filename = $comp_path . "/$user_comp/images"; + $filename = company_path().'/images'; if (!file_exists($filename)) { mkdir($filename); @@ -155,7 +155,7 @@ if (isset($_POST['addupdate'])) { if (check_value('del_image')) { - $filename = $comp_path . "/$user_comp/images/".item_img_name($_POST['NewStockID']).".jpg"; + $filename = company_path().'/images/'.item_img_name($_POST['NewStockID']).".jpg"; if (file_exists($filename)) unlink($filename); } @@ -169,7 +169,7 @@ if (isset($_POST['addupdate'])) $_POST['inventory_account'], $_POST['cogs_account'], $_POST['adjustment_account'], $_POST['assembly_account'], $_POST['dimension_id'], $_POST['dimension2_id'], - check_value('no_sale')); + check_value('no_sale'), check_value('editable')); update_record_status($_POST['NewStockID'], $_POST['inactive'], 'stock_master', 'stock_id'); update_record_status($_POST['NewStockID'], $_POST['inactive'], @@ -187,12 +187,12 @@ if (isset($_POST['addupdate'])) $_POST['inventory_account'], $_POST['cogs_account'], $_POST['adjustment_account'], $_POST['assembly_account'], $_POST['dimension_id'], $_POST['dimension2_id'], - check_value('no_sale')); + check_value('no_sale'), check_value('editable')); display_notification(_("A new item has been added.")); $_POST['stock_id'] = $_POST['NewStockID'] = $_POST['description'] = $_POST['long_description'] = ''; - $_POST['no_sale'] = 0; + $_POST['no_sale'] = $_POST['editable'] = 0; set_focus('NewStockID'); } $Ajax->activate('_page_body'); @@ -210,50 +210,8 @@ if (get_post('clone')) { function check_usage($stock_id, $dispmsg=true) { - $sqls= array( - "SELECT COUNT(*) FROM " - .TB_PREF."stock_moves WHERE stock_id='$stock_id'" => - _('Cannot delete this item because there are stock movements that refer to this item.'), - "SELECT COUNT(*) FROM " - .TB_PREF."bom WHERE component='$stock_id'"=> - _('Cannot delete this item record because there are bills of material that require this part as a component.'), - "SELECT COUNT(*) FROM " - .TB_PREF."sales_order_details WHERE stk_code='$stock_id'" => - _('Cannot delete this item because there are existing purchase order items for it.'), - "SELECT COUNT(*) FROM " - .TB_PREF."purch_order_details WHERE item_code='$stock_id'"=> - _('Cannot delete this item because there are existing purchase order items for it.') - ); - - $msg = ''; - - foreach($sqls as $sql=>$err) { - $result = db_query($sql, "could not query stock usage"); - $myrow = db_fetch_row($result); - if ($myrow[0] > 0) - { - $msg = $err; break; - } - } - - if ($msg == '') { - - $kits = get_where_used($stock_id); - $num_kits = db_num_rows($kits); - if ($num_kits) { - $msg = _("This item cannot be deleted because some code aliases - or foreign codes was entered for it, or there are kits defined - using this item as component") - .':
'; - - while($num_kits--) { - $kit = db_fetch($kits); - $msg .= "'".$kit[0]."'"; - if ($num_kits) $msg .= ','; - } + $msg = item_in_foreign_codes($stock_id); - } - } if ($msg != '') { if($dispmsg) display_error($msg); return false; @@ -270,7 +228,7 @@ if (isset($_POST['delete']) && strlen($_POST['delete']) > 1) $stock_id = $_POST['NewStockID']; delete_item($stock_id); - $filename = $comp_path . "/$user_comp/images/".item_img_name($stock_id).".jpg"; + $filename = company_path().'/images/'.item_img_name($stock_id).".jpg"; if (file_exists($filename)) unlink($filename); display_notification(_("Selected item has been deleted.")); @@ -287,7 +245,7 @@ start_form(true); if (db_has_stock_items()) { - start_table("class='tablestyle_noborder'"); + start_table(TABLESTYLE_NOBORDER); start_row(); stock_items_list_cells(_("Select an item:"), 'stock_id', null, _('New item'), true, check_value('show_inactive')); @@ -303,7 +261,7 @@ if (db_has_stock_items()) } div_start('details'); -start_outer_table($table_style2, 5); +start_outer_table(TABLESTYLE2); table_section(1); @@ -318,6 +276,7 @@ if ($new_item) } else { // Must be modifying an existing item + if (!isset($_POST['NewStockID'])) { $_POST['NewStockID'] = $_POST['stock_id']; $myrow = get_item($_POST['NewStockID']); @@ -339,16 +298,18 @@ else $_POST['no_sale'] = $myrow['no_sale']; $_POST['del_image'] = 0; $_POST['inactive'] = $myrow["inactive"]; - label_row(_("Item Code:"),$_POST['NewStockID']); - hidden('NewStockID', $_POST['NewStockID']); - set_focus('description'); + $_POST['editable'] = $myrow["editable"]; + } + label_row(_("Item Code:"),$_POST['NewStockID']); + hidden('NewStockID', $_POST['NewStockID']); + set_focus('description'); } text_row(_("Name:"), 'description', null, 52, 50); textarea_row(_('Description:'), 'long_description', null, 42, 3); -stock_categories_list_row(_("Category:"), 'category_id', null, $new_item); +stock_categories_list_row(_("Category:"), 'category_id', null, false, $new_item); if ($new_item && (list_updated('category_id') || !isset($_POST['units']))) { @@ -365,6 +326,8 @@ if ($new_item && (list_updated('category_id') || !isset($_POST['units']))) { $_POST['dimension_id'] = $category_record["dflt_dim1"]; $_POST['dimension2_id'] = $category_record["dflt_dim2"]; $_POST['no_sale'] = $category_record["dflt_no_sale"]; + $_POST['editable'] = 0; + } $fresh_item = !isset($_POST['NewStockID']) || $new_item || check_usage($_POST['stock_id'],false); @@ -375,6 +338,12 @@ stock_item_types_list_row(_("Item Type:"), 'mb_flag', null, $fresh_item); stock_units_list_row(_('Units of Measure:'), 'units', null, $fresh_item); +check_row(_("Editable description:"), 'editable'); + +check_row(_("Exclude from sales:"), 'no_sale'); + +table_section(2); + $dim = get_company_pref('use_dimension'); if ($dim >= 1) { @@ -389,8 +358,6 @@ if ($dim < 1) if ($dim < 2) hidden('dimension2_id', 0); -table_section(2); - table_section_title(_("GL Accounts")); gl_all_accounts_list_row(_("Sales Account:"), 'sales_account', $_POST['sales_account']); @@ -403,8 +370,8 @@ if (!is_service($_POST['mb_flag'])) } else { - gl_all_accounts_list_row(_("C.O.G.S. Account:"), 'inventory_account', $_POST['inventory_account']); - hidden('cogs_account', $_POST['cogs_account']); + gl_all_accounts_list_row(_("C.O.G.S. Account:"), 'cogs_account', $_POST['cogs_account']); + hidden('inventory_account', $_POST['inventory_account']); hidden('adjustment_account', $_POST['adjustment_account']); } @@ -417,18 +384,18 @@ else table_section_title(_("Other")); // Add image upload for New Item - by Joe -label_row(_("Image File (.jpg)") . ":", ""); +file_row(_("Image File (.jpg)") . ":", 'pic', 'pic'); // Add Image upload for New Item - by Joe $stock_img_link = ""; $check_remove_image = false; -if (isset($_POST['NewStockID']) && file_exists("$comp_path/$user_comp/images/" +if (isset($_POST['NewStockID']) && file_exists(company_path().'/images/' .item_img_name($_POST['NewStockID']).".jpg")) { // 31/08/08 - rand() call is necessary here to avoid caching problems. Thanks to Peter D. $stock_img_link .= "[".$_POST["; - $check_remove_image = true; + "]' src='".company_path().'images/'.item_img_name($_POST['NewStockID']). + ".jpg?nocache=".rand()."'"." height='$pic_height' border='0'>"; + $check_remove_image = true; } else { @@ -439,8 +406,6 @@ label_row(" ", $stock_img_link); if ($check_remove_image) check_row(_("Delete Image:"), 'del_image'); -check_row(_("Exclude from sales:"), 'no_sale'); - record_status_list_row(_("Item status:"), 'inactive'); end_outer_table(1); div_end();