PHP 7.4 compatibility bug
[fa-stable.git] / sales / includes / ui / sales_order_ui.inc
index 7b91967b97ab7bb734e393d297781c7496f53c17..c47c5da57cfacb234e5c008547cefbfc867fab7d 100644 (file)
@@ -490,7 +490,7 @@ function sales_order_item_controls(&$order, &$rowcounter, $line_no=-1)
                hidden('stock_id', $_POST['stock_id']);
                label_cell($_POST['stock_id']);
                if ($order->line_items[$id]->descr_editable)
-                       text_cells(null,'item_description', null, 45, 150);
+                       text_cells(null,'item_description', null, 45, 50);
                else {
                        hidden('item_description', $_POST['item_description']);
                        label_cell($_POST['item_description']);
@@ -499,13 +499,20 @@ function sales_order_item_controls(&$order, &$rowcounter, $line_no=-1)
        }
        else    // prepare new line
        {
-               sales_items_list_cells(null,'stock_id', null, false, true, true);
-               if (list_updated('stock_id')) {
-                           $Ajax->activate('price');
-                           $Ajax->activate('units');
-                           $Ajax->activate('qty');
-                           $Ajax->activate('line_total');
-               }
+               if ($order->fixed_asset)
+            stock_disposable_fa_list_cells(null,'stock_id', null, _('[Select item]'), true, $order->line_items);
+        else {
+            if (!isset($_POST['stock_id'])) {   // Check if stock_id dosesn't exist
+                               $_POST['stock_id'] = last_sales_order_detail($order, 'stk_code');  //get the llast sales stock id.
+                       }
+            sales_items_list_cells(null,'stock_id', $_POST['stock_id'], false, true, true);
+        }
+        if (list_updated('stock_id')) {            
+            $Ajax->activate('price');
+            $Ajax->activate('units');
+            $Ajax->activate('qty');
+            $Ajax->activate('line_total');
+        }              
 
                $item_info = get_item_edit_info($_POST['stock_id']);
                $units = $item_info["units"];
@@ -519,7 +526,11 @@ function sales_order_item_controls(&$order, &$rowcounter, $line_no=-1)
                $_POST['Disc'] = percent_format($order->default_discount * 100);
        }
 
-       qty_cells(null, 'qty', $_POST['qty'], null, null, $dec);
+       if ($order->fixed_asset) {
+               label_cell(1, '', 'qty');
+               hidden('qty', 1);
+       } else 
+               qty_cells(null, 'qty', $_POST['qty'], null, null, $dec);
 
        if ($order->trans_no!=0) {
                qty_cell($line_no==-1 ? 0 :$order->line_items[$line_no]->qty_done, false, $dec);
@@ -599,8 +610,8 @@ function display_delivery_details(&$order)
                start_outer_table(TABLESTYLE2, "width='90%'");
                table_section(1);
 
-               locations_list_row(_("Deliver from Location:"), 'Location', null, false, true);
-               if ($order->payment_terms['days_before_due'] < 0)
+               locations_list_row(_("Deliver from Location:"), 'Location', null, false, true, $order->fixed_asset);
+               if ($order->payment_terms['days_before_due'] == -1)
                {
                        $Ajax->addUpdate('items_table', 'prep_amount', price_format($order->get_trans_total())); // bind to items_table update
                        if (!$order->is_started())
@@ -614,7 +625,7 @@ function display_delivery_details(&$order)
 
                date_row($delname, 'delivery_date',
                        $order->trans_type==ST_SALESORDER ?  _('Enter requested day of delivery') 
-                               : $order->trans_type==ST_SALESQUOTE ? _('Enter Valid until Date') : '');
+                               : ($order->trans_type==ST_SALESQUOTE ? _('Enter Valid until Date') : ''));
                text_row(_("Deliver To:"), 'deliver_to', $order->deliver_to, 50, 60,
                        _('Additional identifier for delivery e.g. name of receiving person'));