Finally ajaxified version of inqiry.
authorJanusz Dobrowolski <janusz@frontaccounting.eu>
Sun, 15 Jun 2008 21:04:04 +0000 (21:04 +0000)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Sun, 15 Jun 2008 21:04:04 +0000 (21:04 +0000)
sales/inquiry/sales_deliveries_view.php
sales/inquiry/sales_orders_view.php

index 7ae41594f0df146f585d83a2f691841f6fc83d35..98d17a7490b51efce0f4fcec9d66a4bfb859e2e2 100644 (file)
@@ -75,6 +75,28 @@ if (isset($_POST['BatchInvoice']))
                meta_forward($path_to_root . '/sales/customer_invoice.php','BatchInvoice=Yes');
     }
 }
+
+//-----------------------------------------------------------------------------------
+if (get_post('SearchOrders')) 
+{
+       $Ajax->activate('deliveries_tbl');
+} elseif (get_post('_DeliveryNumber_changed')) 
+{
+       $disable = get_post('DeliveryNumber') !== '';
+
+       $Ajax->addDisable(true, 'DeliveryAfterDate', $disable);
+       $Ajax->addDisable(true, 'DeliveryToDate', $disable);
+       $Ajax->addDisable(true, 'StockLocation', $disable);
+       $Ajax->addDisable(true, '_SelectStockFromList_edit', $disable);
+       $Ajax->addDisable(true, 'SelectStockFromList', $disable);
+       // if search is not empty rewrite table
+       if ($disable) {
+               $Ajax->addFocus(true, 'DeliveryNumber');
+       } else
+               $Ajax->addFocus(true, 'DeliveryAfterDate');
+       $Ajax->activate('deliveries_tbl');
+}
+
 //-----------------------------------------------------------------------------------
 print_hidden_script(13);
 
@@ -82,7 +104,7 @@ start_form(false, false, $_SERVER['PHP_SELF'] ."?OutstandingOnly=" . $_POST['Out
 
 start_table("class='tablestyle_noborder'");
 start_row();
-ref_cells(_("#:"), 'DeliveryNumber');
+ref_cells(_("#:"), 'DeliveryNumber', '',null, '', true);
 date_cells(_("from:"), 'DeliveryAfterDate', '', null, -30);
 date_cells(_("to:"), 'DeliveryToDate', '', null, 1);
 
@@ -90,7 +112,7 @@ locations_list_cells(_("Location:"), 'StockLocation', null, true);
 
 stock_items_list_cells(_("Item:"), 'SelectStockFromList', null, true);
 
-submit_cells('SearchOrders', _("Search"));
+submit_cells('SearchOrders', _("Search"),'',_('Select documents'), true);
 
 hidden('OutstandingOnly', $_POST['OutstandingOnly']);
 
@@ -126,9 +148,6 @@ $sql .= " Sum(".TB_PREF."debtor_trans_details.quantity-"
 
 $sql .= " Sum(".TB_PREF."debtor_trans_details.qty_done) AS Done, ";
 
-//$sql .= " Sum(".TB_PREF."debtor_trans_details.unit_price*"
-// .TB_PREF."debtor_trans_details.quantity*(1-"
-// .TB_PREF."debtor_trans_details.discount_percent)) AS DeliveryValue";
 $sql .= "(ov_amount+ov_gst+ov_freight+ov_freight_tax) AS DeliveryValue";
 $sql .=" FROM "
         .TB_PREF."sales_orders, "
@@ -145,10 +164,16 @@ $sql .=" FROM "
                        AND ".TB_PREF."debtor_trans.branch_code = ".TB_PREF."cust_branch.branch_code
                        AND ".TB_PREF."debtor_trans.debtor_no = ".TB_PREF."cust_branch.debtor_no ";
 
+       if ($_POST['OutstandingOnly'] == true) {
+        $sql .= " AND ".TB_PREF."debtor_trans_details.qty_done < ".TB_PREF."debtor_trans_details.quantity ";
+       }
+
 //figure out the sql required from the inputs available
 if (isset($_POST['DeliveryNumber']) && $_POST['DeliveryNumber'] != "")
 {
-       $sql .= " AND ".TB_PREF."debtor_trans.trans_no LIKE '%". $_POST['DeliveryNumber'] ."' GROUP BY ".TB_PREF."debtor_trans.trans_no";
+// if ($_POST['DeliveryNumber'] != '*') // TODO paged table
+       $sql .= " AND ".TB_PREF."debtor_trans.trans_no LIKE '%". $_POST['DeliveryNumber'] ."'";
+ $sql .= " GROUP BY ".TB_PREF."debtor_trans.trans_no";
 }
 else
 {
@@ -168,15 +193,7 @@ else
        if (isset($_POST['StockLocation']) && $_POST['StockLocation'] != reserved_words::get_all())
                $sql .= " AND ".TB_PREF."sales_orders.from_stk_loc = '". $_POST['StockLocation'] . "' ";
 
-       if ($_POST['OutstandingOnly'] == true) {
-        $sql .= " AND ".TB_PREF."debtor_trans_details.qty_done < ".TB_PREF."debtor_trans_details.quantity ";
-       }
-
        $sql .= " GROUP BY ".TB_PREF."debtor_trans.trans_no ";
-//     .TB_PREF."debtor_trans.debtor_no, "
-//     .TB_PREF."debtor_trans.branch_code, "
-//             ".TB_PREF."sales_orders.customer_ref, "
-//             .TB_PREF."debtor_trans.tran_date";
 
 } //end no delivery number selected
 
@@ -193,6 +210,8 @@ if ($result)
 {
        /*show a table of the deliveries returned by the sql */
 
+       div_start('deliveries_tbl');
+
        start_table("$table_style colspan=7 width=95%");
        $th = array(_("Delivery #"), _("Customer"), _("Branch"), _("Reference"), _("Delivery Date"),
                _("Due By"), _("Delivery Total"), _("Currency"), submit('BatchInvoice','Batch Inv', false),
@@ -268,6 +287,7 @@ if ($result)
 
    if ($overdue_items)
                display_note(_("Marked items are overdue."), 0, 1, "class='overduefg'");
+div_end();
 }
 
 echo "<br>";
index 82c103958d9c8b8e8ddb9d05174d4e7083a3afac..3711fc9b8a142f9fcc7dfa898bbf34eaea330a35 100644 (file)
@@ -48,27 +48,37 @@ else
        $selected_customer = -1;
 
 //-----------------------------------------------------------------------------------
-/*
-$action = $_SERVER['PHP_SELF'];
-
-if ($_POST['order_view_mode']=='OutstandingOnly')
+// Ajax updates
+//
+if (get_post('SearchOrders')) 
 {
-       $action .= "?OutstandingOnly=" . $_POST['order_view_mode']$_PO;
-}
-elseif ($_POST['order_view_mode']=='InvoiceTemplates')
+       $Ajax->activate('orders_tbl');
+} elseif (get_post('_OrderNumber_changed')) 
 {
-       $action .= "?InvoiceTemplates=" . $_POST['InvoiceTemplates'];
-}
-elseif ($_POST['order_view_mode']=='DeliveryTemplates')
-{
-       $action .= "?DeliveryTemplates=" . $_POST['InvoiceTemplates'];
+       $disable = get_post('OrderNumber') !== '';
+
+       if ($_POST['order_view_mode']!='DeliveryTemplates' 
+               && $_POST['order_view_mode']!='InvoiceTemplates') {
+                       $Ajax->addDisable(true, 'OrdersAfterDate', $disable);
+                       $Ajax->addDisable(true, 'OrdersToDate', $disable);
+       }
+       $Ajax->addDisable(true, 'StockLocation', $disable);
+       $Ajax->addDisable(true, '_SelectStockFromList_edit', $disable);
+       $Ajax->addDisable(true, 'SelectStockFromList', $disable);
+
+       if ($disable) {
+               $Ajax->addFocus(true, 'OrderNumber');
+       } else
+               $Ajax->addFocus(true, 'OrdersAfterDate');
+
+       $Ajax->activate('orders_tbl');
 }
-*/
+
 start_form(false, false, $_SERVER['PHP_SELF'] .SID);
 
 start_table("class='tablestyle_noborder'");
 start_row();
-ref_cells(_("#:"), 'OrderNumber');
+ref_cells(_("#:"), 'OrderNumber', '',null, '', true);
 if ($_POST['order_view_mode'] != 'DeliveryTemplates' && $_POST['order_view_mode'] != 'InvoiceTemplates')
 {
        date_cells(_("from:"), 'OrdersAfterDate', '', null, -30);
@@ -78,7 +88,7 @@ locations_list_cells(_("Location:"), 'StockLocation', null, true);
 
 stock_items_list_cells(_("Item:"), 'SelectStockFromList', null, true);
 
-submit_cells('SearchOrders', _("Search"));
+submit_cells('SearchOrders', _("Search"),'',_('Select documents'), true);
 
 hidden('order_view_mode', $_POST['order_view_mode']);
 
@@ -129,7 +139,9 @@ $sql .=     " FROM ".TB_PREF."sales_orders, ".TB_PREF."sales_order_details, ".TB_PRE
 //figure out the sql required from the inputs available
 if (isset($_POST['OrderNumber']) && $_POST['OrderNumber'] != "")
 {
-       $sql .= " AND ".TB_PREF."sales_orders.order_no LIKE '%". $_POST['OrderNumber'] ."' GROUP BY ".TB_PREF."sales_orders.order_no";
+// if ($_POST['OrderNumber'] != '*')  // TODO paged table
+       $sql .= " AND ".TB_PREF."sales_orders.order_no LIKE '%". $_POST['OrderNumber'] ."'";
+ $sql .= " GROUP BY ".TB_PREF."sales_orders.order_no";
 }
 else
 {
@@ -159,16 +171,15 @@ else
                ".TB_PREF."sales_orders.customer_ref, ".TB_PREF."sales_orders.ord_date, ".TB_PREF."sales_orders.deliver_to";
 
 } //end not order number selected
-
 $result = db_query($sql,"No orders were returned");
-
 //-----------------------------------------------------------------------------------
-
 if ($result)
 {
        print_hidden_script(30);
 
+       start_form();
        /*show a table of the orders returned by the sql */
+       div_start('orders_tbl');
 
        start_table("$table_style colspan=6 width=95%");
        $th = array(_("Order #"), _("Customer"), _("Branch"), _("Cust Order #"), _("Order Date"),
@@ -183,14 +194,12 @@ if ($result)
        } 
 
        table_header($th);
-       start_form();
 
        $j = 1;
        $k = 0; //row colour counter
        $overdue_items = false;
        while ($myrow = db_fetch($result))
        {
-
                $view_page = get_customer_trans_view_str(systypes::sales_order(), $myrow["order_no"]);
                $formated_del_date = sql2date($myrow["delivery_date"]);
                $formated_order_date = sql2date($myrow["ord_date"]);
@@ -238,7 +247,7 @@ if ($result)
                {
                        echo "<td><input ".($myrow["type"]==1 ? 'checked' : '')." type='checkbox' name='chgtpl" .$myrow["order_no"]. "' value='1'
                                onclick='this.form.ChangeTmpl.value= this.name.substr(6);
-                               this.form.submit();' ></td>";
+                               JsHttpRequest.request(this);' ></td>";
 
                        $modify_page = $path_to_root . "/sales/sales_order_entry.php?" . SID . "ModifyOrderNumber=" . $myrow["order_no"];
                        label_cell("<a href='$modify_page'>" . _("Edit") . "</a>");
@@ -247,7 +256,7 @@ if ($result)
                end_row();;
 
                $j++;
-               If ($j == 12)
+               if ($j == 12)
                {
                        $j = 1;
                        table_header($th);
@@ -256,14 +265,14 @@ if ($result)
        }
        //end of while loop
        hidden('ChangeTmpl', 0);
-       end_form();
        end_table();
 
    if ($overdue_items)
                display_note(_("Marked items are overdue."), 0, 1, "class='overduefg'");
+       div_end();
+       end_form();
 }
 
 echo "<br>";
-
 end_page();
 ?>
\ No newline at end of file