X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=sales%2Fcredit_note_entry.php;h=1946aca1e339a6728e548e8db38f8e039b5dedf1;hb=0b0690657989cd259e5966faaac7cacbfa89cee2;hp=9258863992f46e5a8612a8876f8817743f24aaef;hpb=e871e7b7f097ec86efa815e2005786710afb79e4;p=fa-stable.git diff --git a/sales/credit_note_entry.php b/sales/credit_note_entry.php index 92588639..1946aca1 100644 --- a/sales/credit_note_entry.php +++ b/sales/credit_note_entry.php @@ -54,6 +54,11 @@ if (isset($_GET['AddedID'])) { display_footer_exit(); } +//-------------------------------------------------------------------------------- + +function line_start_focus() { + set_focus(get_company_pref('no_supplier_list') ? 'stock_id_edit' : 'StockID2'); +} //----------------------------------------------------------------------------- @@ -61,7 +66,7 @@ function copy_to_cn() { $_SESSION['Items']->Comments = $_POST['CreditText']; $_SESSION['Items']->document_date = $_POST['OrderDate']; - $_SESSION['Items']->freight_cost = $_POST['ChargeFreightCost']; + $_SESSION['Items']->freight_cost = input_num('ChargeFreightCost'); $_SESSION['Items']->Location = $_POST["Location"]; $_SESSION['Items']->sales_type = $_POST['sales_type_id']; $_SESSION['Items']->reference = $_POST['ref']; @@ -74,7 +79,7 @@ function copy_from_cn() { $_POST['CreditText'] = $_SESSION['Items']->Comments; $_POST['OrderDate'] = $_SESSION['Items']->document_date; - $_POST['ChargeFreightCost'] = $_SESSION['Items']->freight_cost; + $_POST['ChargeFreightCost'] = price_format($_SESSION['Items']->freight_cost); $_POST['Location'] = $_SESSION['Items']->Location; $_POST['sales_type_id'] = $_SESSION['Items']->sales_type; $_POST['ref'] = $_SESSION['Items']->reference; @@ -97,21 +102,26 @@ function can_process() $input_error = 0; - if ($_SESSION['Items']->count_items() == 0 - && (!isset($_POST['ChargeFreightCost']) || $_POST['ChargeFreightCost'] <= 0)) + if ($_SESSION['Items']->count_items() == 0 && (!check_num('ChargeFreightCost',0))) return false; - - if (!references::is_valid($_POST['ref'])) { + if($_SESSION['Items']->trans_no == 0) { + if (!references::is_valid($_POST['ref'])) { display_error( _("You must enter a reference.")); + set_focus('ref'); $input_error = 1; - } elseif (!is_new_reference($_POST['ref'], 11)) { + } elseif (!is_new_reference($_POST['ref'], 11)) { display_error( _("The entered reference is already in use.")); + set_focus('ref'); $input_error = 1; - } elseif (!is_date($_POST['OrderDate'])) { + } + } + if (!is_date($_POST['OrderDate'])) { display_error(_("The entered date for the credit note is invalid.")); + set_focus('OrderDate'); $input_error = 1; } elseif (!is_date_in_fiscalyear($_POST['OrderDate'])) { display_error(_("The entered date is not in fiscal year.")); + set_focus('OrderDate'); $input_error = 1; } return ($input_error == 0); @@ -139,16 +149,19 @@ if (isset($_POST['ProcessCredit']) && can_process()) { function check_item_data() { - if ($_POST['qty'] <= 0) { + if (!check_num('qty',0)) { display_error(_("The quantity must be greater than zero.")); + set_focus('qty'); return false; } - if (!is_numeric($_POST['price']) || $_POST['price'] < 0) { + if (!check_num('price',0)) { display_error(_("The entered price is negative or invalid.")); + set_focus('price'); return false; } - if (!is_numeric($_POST['Disc']) || $_POST['Disc'] > 100 || $_POST['Disc'] < 0) { + if (!check_num('Disc', 0, 100)) { display_error(_("The entered discount percent is negative, greater than 100 or invalid.")); + set_focus('Disc'); return false; } return true; @@ -159,16 +172,18 @@ function check_item_data() function handle_update_item() { if ($_POST['UpdateItem'] != "" && check_item_data()) { - $_SESSION['Items']->update_cart_item($_POST['line_no'], $_POST['qty'], - $_POST['price'], ($_POST['Disc'] / 100)); + $_SESSION['Items']->update_cart_item($_POST['line_no'], input_num('qty'), + input_num('price'), input_num('Disc') / 100); } + line_start_focus(); } //----------------------------------------------------------------------------- -function handle_delete_item() +function handle_delete_item($line_no) { - $_SESSION['Items']->remove_from_cart($_GET['Delete']); + $_SESSION['Items']->remove_from_cart($line_no); + line_start_focus(); } //----------------------------------------------------------------------------- @@ -179,15 +194,14 @@ function handle_new_item() if (!check_item_data()) return; - add_to_order($_SESSION['Items'], $_POST['stock_id'], $_POST['qty'], - $_POST['price'], $_POST['Disc'] / 100); + add_to_order($_SESSION['Items'], $_POST['stock_id'], input_num('qty'), + input_num('price'), input_num('Disc') / 100); + line_start_focus(); } //----------------------------------------------------------------------------- -if (isset($_GET['Delete']) || isset($_GET['Edit'])) - copy_from_cn(); - -if (isset($_GET['Delete'])) - handle_delete_item(); +$id = find_submit('Delete'); +if ($id!=-1) + handle_delete_item($id); if (isset($_POST['AddItem']) || isset($_POST['UpdateItem'])) copy_to_cn(); @@ -198,6 +212,9 @@ if (isset($_POST['AddItem'])) if (isset($_POST['UpdateItem'])) handle_update_item(); +if (isset($_POST['CancelItemChanges']) || isset($_POST['UpdateItem'])) + line_start_focus(); + //----------------------------------------------------------------------------- if (!processing_active()) { @@ -229,7 +246,7 @@ if ($customer_error == "") { echo "
"; submit_cells('Update', _("Update")); submit_cells('ProcessCredit', _("Process Credit Note")); -echo "
"; +echo "
"; end_form(); end_page();