Added ajax and some smaller fixes in sales module files
[fa-stable.git] / sales / credit_note_entry.php
index 5b2af3b2e63b388152d7ea34859f7d3d37e1ced4..2b7ded83236daa577c6924951679893b429f9086 100644 (file)
@@ -54,6 +54,13 @@ if (isset($_GET['AddedID'])) {
 
        display_footer_exit();
 }
+//--------------------------------------------------------------------------------
+
+function line_start_focus() {
+  global $Ajax;
+  $Ajax->activate('items_table');
+  set_focus('_stock_id_edit');
+}
 
 //-----------------------------------------------------------------------------
 
@@ -88,6 +95,7 @@ function handle_new_credit($trans_no)
        processing_start();
        $_SESSION['Items'] = new Cart(11,$trans_no);
        copy_from_cn();
+    line_start_focus();
 }
 
 //-----------------------------------------------------------------------------
@@ -102,17 +110,21 @@ function can_process()
        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))     {
                display_error( _("The entered reference is already in use."));
+               set_focus('ref');
                $input_error = 1;
-           } 
+           }
        }
        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);
@@ -126,6 +138,7 @@ if (isset($_POST['ProcessCredit']) && can_process()) {
                display_note(_("For credit notes created to write off the stock, a general ledger account is required to be selected."), 1, 0);
                display_note(_("Please select an account to write the cost of the stock off to, then click on Process again."), 1, 0);
                exit;
+               
        }
        if (!isset($_POST['WriteOffGLCode'])) {
                $_POST['WriteOffGLCode'] = 0;
@@ -142,14 +155,17 @@ function check_item_data()
 {
        if (!check_num('qty',0)) {
                display_error(_("The quantity must be greater than zero."));
+               set_focus('qty');
                return false;
        }
        if (!check_num('price',0)) {
                display_error(_("The entered price is negative or invalid."));
+               set_focus('price');
                return false;
        }
        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;
@@ -163,7 +179,7 @@ function handle_update_item()
                $_SESSION['Items']->update_cart_item($_POST['line_no'], input_num('qty'),
                        input_num('price'), input_num('Disc') / 100);
        }
-    set_focus('StockID2');
+    line_start_focus();
 }
 
 //-----------------------------------------------------------------------------
@@ -171,7 +187,7 @@ function handle_update_item()
 function handle_delete_item($line_no)
 {
        $_SESSION['Items']->remove_from_cart($line_no);
-    set_focus('StockID2');
+    line_start_focus();
 }
 
 //-----------------------------------------------------------------------------
@@ -184,7 +200,7 @@ function handle_new_item()
 
        add_to_order($_SESSION['Items'], $_POST['stock_id'], input_num('qty'),
                input_num('price'), input_num('Disc') / 100);
-    set_focus('StockID2');
+    line_start_focus();
 }
 //-----------------------------------------------------------------------------
 $id = find_submit('Delete');
@@ -201,7 +217,7 @@ if (isset($_POST['UpdateItem']))
        handle_update_item();
 
 if (isset($_POST['CancelItemChanges']) || isset($_POST['UpdateItem']))
-       set_focus('StockID2');
+       line_start_focus();
 
 //-----------------------------------------------------------------------------
 
@@ -234,7 +250,7 @@ if ($customer_error == "") {
 echo "<br><center><table><tr>";
 submit_cells('Update', _("Update"));
 submit_cells('ProcessCredit', _("Process Credit Note"));
-echo "</tr></table>";
+echo "</tr></table></center>";
 
 end_form();
 end_page();