set_page_security( @$_POST['order_view_mode'],
array( 'OutstandingOnly' => 'SA_SALESDELIVERY',
- 'InvoiceTemplates' => 'SA_SALESINVOICE'),
+ 'InvoiceTemplates' => 'SA_SALESINVOICE',
+ 'DeliveryTemplates' => 'SA_SALESDELIVERY',
+ 'PrepaidOrders' => 'SA_SALESINVOICE'),
array( 'OutstandingOnly' => 'SA_SALESDELIVERY',
- 'InvoiceTemplates' => 'SA_SALESINVOICE')
+ 'InvoiceTemplates' => 'SA_SALESINVOICE',
+ 'DeliveryTemplates' => 'SA_SALESDELIVERY',
+ 'PrepaidOrders' => 'SA_SALESINVOICE')
);
-if (!@$_GET['popup'])\r
-{\r
- $js = "";
- if ($use_popup_windows)
- $js .= get_js_open_window(900, 600);
- if ($use_date_picker)
- $js .= get_js_date_picker();
- page($_SESSION['page_title'], false, false, "", $js);\r
-}
+
if (get_post('type'))
$trans_type = $_POST['type'];
elseif (isset($_GET['type']) && $_GET['type'] == ST_SALESQUOTE)
$_POST['order_view_mode'] = 'DeliveryTemplates';
$_SESSION['page_title'] = _($help_context = "Select Template for Delivery");
}
+ elseif (isset($_GET['PrepaidOrders']) && ($_GET['PrepaidOrders'] == true))
+ {
+ $_POST['order_view_mode'] = 'PrepaidOrders';
+ $_SESSION['page_title'] = _($help_context = "Invoicing Prepayment Orders");
+ }
elseif (!isset($_POST['order_view_mode']))
{
$_POST['order_view_mode'] = false;
$_SESSION['page_title'] = _($help_context = "Search All Sales Quotations");
}
-if (isset($_GET['selected_customer']))
-{
- $selected_customer = $_GET['selected_customer'];
-}
-elseif (isset($_POST['selected_customer']))
-{
- $selected_customer = $_POST['selected_customer'];
-}
-else
- $selected_customer = -1;
-
-//---------------------------------------------------------------------------------------------
-
-if (isset($_POST['SelectStockFromList']) && ($_POST['SelectStockFromList'] != "") &&
- ($_POST['SelectStockFromList'] != ALL_TEXT))
-{
- $selected_stock_item = $_POST['SelectStockFromList'];
-}
-else
-{
- unset($selected_stock_item);
-}
+$js = "";
+if ($SysPrefs->use_popup_windows)
+ $js .= get_js_open_window(900, 600);
+if (user_use_date_picker())
+ $js .= get_js_date_picker();
+page($_SESSION['page_title'], false, false, "", $js);
//---------------------------------------------------------------------------------------------
// Query format functions
//
return (date1_greater_date2(Today(), sql2date($row['delivery_date'])));
else
return ($row['type'] == 0
- && date1_greater_date2(Today(), sql2date($row['ord_date']))
+ && date1_greater_date2(Today(), sql2date($row['delivery_date']))
&& ($row['TotDelivered'] < $row['TotQuantity']));
}
function edit_link($row)
{
- if (@$_GET['popup'])\r
- return '';\r
- global $trans_type;
- $modify = ($trans_type == ST_SALESORDER ? "ModifyOrderNumber" : "ModifyQuotationNumber");
- return pager_link( _("Edit"),
- "/sales/sales_order_entry.php?$modify=" . $row['order_no'], ICON_EDIT);
+ global $page_nested;
+
+ if (is_prepaid_order_open($row['order_no']))
+ return '';
+
+ return $page_nested ? '' : trans_editor_link($row['trans_type'], $row['order_no']);
}
function dispatch_link($row)
{
global $trans_type;
+
+ if ($row['ord_payments'] + $row['inv_payments'] < $row['prep_amount'])
+ return '';
+
if ($trans_type == ST_SALESORDER)
return pager_link( _("Dispatch"),
"/sales/customer_delivery.php?OrderNumber=" .$row['order_no'], ICON_DOC);
- else
+ else
return pager_link( _("Sales Order"),
"/sales/sales_order_entry.php?OrderNumber=" .$row['order_no'], ICON_DOC);
}
function tmpl_checkbox($row)
{
- global $trans_type;
- if ($trans_type == ST_SALESQUOTE)
+ global $trans_type, $page_nested;
+
+ if ($trans_type == ST_SALESQUOTE || !check_sales_order_type($row['order_no']))
+ return '';
+
+ if ($page_nested)
return '';
$name = "chgtpl" .$row['order_no'];
$value = $row['type'] ? 1:0;
_('Set this order as a template for direct deliveries/invoices'))
. hidden('last['.$row['order_no'].']', $value, false);
}
-//---------------------------------------------------------------------------------------------
-// Update db record if respective checkbox value has changed.
-//
-function change_tpl_flag($id)
-{
- global $Ajax;
-
- $sql = "UPDATE ".TB_PREF."sales_orders SET type = !type WHERE order_no=$id";
- db_query($sql, "Can't change sales order type");
- $Ajax->activate('orders_tbl');
+function invoice_prep_link($row)
+{
+ // invoicing should be available only for partially allocated orders
+ return
+ $row['inv_payments'] < $row['total'] ?
+ pager_link($row['ord_payments'] ? _("Prepayment Invoice") : _("Final Invoice"),
+ "/sales/customer_invoice.php?InvoicePrepayments=" .$row['order_no'], ICON_DOC) : '';
}
$id = find_submit('_chgtpl');
if ($id != -1)
- change_tpl_flag($id);
+{
+ sales_order_set_template($id, check_value('chgtpl'.$id));
+ $Ajax->activate('orders_tbl');
+}
if (isset($_POST['Update']) && isset($_POST['last'])) {
foreach($_POST['last'] as $id => $value)
if ($value != check_value('chgtpl'.$id))
- change_tpl_flag($id);
+ sales_order_set_template($id, !check_value('chgtpl'.$id));
}
$show_dates = !in_array($_POST['order_view_mode'], array('OutstandingOnly', 'InvoiceTemplates', 'DeliveryTemplates'));
$disable = get_post('OrderNumber') !== '' || get_post('OrderReference') !== '';
if ($show_dates) {
- $Ajax->addDisable(true, 'OrdersAfterDate', $disable);
- $Ajax->addDisable(true, 'OrdersToDate', $disable);
+ $Ajax->addDisable(true, 'OrdersAfterDate', $disable);
+ $Ajax->addDisable(true, 'OrdersToDate', $disable);
}
$Ajax->activate('orders_tbl');
}
-if (!@$_GET['popup'])\r
- start_form();
+start_form();
start_table(TABLESTYLE_NOBORDER);
start_row();
ref_cells(_("Ref"), 'OrderReference', '',null, '', true);
if ($show_dates)
{
- date_cells(_("from:"), 'OrdersAfterDate', '', null, -30);
+ date_cells(_("from:"), 'OrdersAfterDate', '', null, -user_transaction_days());
date_cells(_("to:"), 'OrdersToDate', '', null, 1);
}
-locations_list_cells(_("Location:"), 'StockLocation', null, true);
+locations_list_cells(_("Location:"), 'StockLocation', null, true, true);
if($show_dates) {
end_row();
start_table(TABLESTYLE_NOBORDER);
start_row();
}
-stock_items_list_cells(_("Item:"), 'SelectStockFromList', null, true);
-if (!@$_GET['popup'])\r
- customer_list_cells(_("Select a customer: "), 'customer_id', null, true);\r
+stock_items_list_cells(_("Item:"), 'SelectStockFromList', null, true, true);
+
+if (!$page_nested)
+ customer_list_cells(_("Select a customer: "), 'customer_id', null, true, true);
if ($trans_type == ST_SALESQUOTE)
check_cells(_("Show All:"), 'show_all');
//---------------------------------------------------------------------------------------------
// Orders inquiry table
//
-$sql = get_sql_for_sales_orders_view($selected_customer, $trans_type, $_POST['OrderNumber'], $_POST['order_view_mode'],
- @$selected_stock_item, @$_POST['OrdersAfterDate'], @$_POST['OrdersToDate'], @$_POST['OrderReference'], $_POST['StockLocation'], $_POST['customer_id']);\r
+$sql = get_sql_for_sales_orders_view($trans_type, get_post('OrderNumber'), get_post('order_view_mode'),
+ get_post('SelectStockFromList'), get_post('OrdersAfterDate'), get_post('OrdersToDate'), get_post('OrderReference'), get_post('StockLocation'),
+ get_post('customer_id'));
if ($trans_type == ST_SALESORDER)
$cols = array(
- _("Order #") => array('fun'=>'view_link'),
- _("Ref"),
- _("Customer"),
+ _("Order #") => array('fun'=>'view_link', 'align'=>'right'),
+ _("Ref") => array('type' => 'sorder.reference', 'ord' => '') ,
+ _("Customer") => array('type' => 'debtor.name' , 'ord' => '') ,
_("Branch"),
_("Cust Order Ref"),
- _("Order Date") => 'date',
+ _("Order Date") => array('type' => 'date', 'ord' => ''),
_("Required By") =>array('type'=>'date', 'ord'=>''),
_("Delivery To"),
_("Order Total") => array('type'=>'amount', 'ord'=>''),
);
else
$cols = array(
- _("Quote #") => array('fun'=>'view_link'),
+ _("Quote #") => array('fun'=>'view_link', 'align'=>'right'),
_("Ref"),
_("Customer"),
_("Branch"),
'Type' => 'skip',
_("Currency") => array('align'=>'center')
);
-if ($_POST['order_view_mode'] == 'OutstandingOnly') {\r
- //array_substitute($cols, 3, 1, _("Cust Order Ref"));\r
- array_append($cols, array(\r
- array('insert'=>true, 'fun'=>'dispatch_link'),\r
- array('insert'=>true, 'fun'=>'edit_link')));\r
+if ($_POST['order_view_mode'] == 'OutstandingOnly') {
+ array_append($cols, array(
+ array('insert'=>true, 'fun'=>'dispatch_link'),
+ array('insert'=>true, 'fun'=>'edit_link')));
} elseif ($_POST['order_view_mode'] == 'InvoiceTemplates') {
- array_substitute($cols, 3, 1, _("Description"));
+ array_substitute($cols, 4, 1, _("Description"));
array_append($cols, array( array('insert'=>true, 'fun'=>'invoice_link')));
} else if ($_POST['order_view_mode'] == 'DeliveryTemplates') {
- array_substitute($cols, 3, 1, _("Description"));
+ array_substitute($cols, 4, 1, _("Description"));
array_append($cols, array(
array('insert'=>true, 'fun'=>'delivery_link'))
);
+} else if ($_POST['order_view_mode'] == 'PrepaidOrders') {
+ array_append($cols, array(
+ array('insert'=>true, 'fun'=>'invoice_prep_link'))
+ );
} elseif ($trans_type == ST_SALESQUOTE) {
array_append($cols,array(
display_db_pager($table);
submit_center('Update', _("Update"), true, '', null);
-if (!@$_GET['popup'])\r
-{
- end_form();
- end_page();
-}\r
-?>
\ No newline at end of file
+end_form();
+end_page();