5 include_once($path_to_root . "/includes/session.inc");
7 include_once($path_to_root . "/sales/includes/sales_ui.inc");
8 include_once($path_to_root . "/sales/includes/sales_db.inc");
10 if ($use_popup_windows)
11 $js .= get_js_open_window(900, 500);
12 page(_("Customer Allocations"), false, false, "", $js);
14 //--------------------------------------------------------------------------------
15 if ($ret = context_restore()) {
16 if(isset($ret['customer_id']))
17 $_POST['customer_id'] = $ret['customer_id'];
19 if (isset($_POST['_customer_id_editor'])) {
20 context_call($path_to_root.'/sales/manage/customers.php?debtor_no='.$_POST['customer_id'] );
23 function display_allocatable_transactions()
25 global $table_style, $path_to_root;
28 /* show all outstanding receipts and credits to be allocated */
29 /*Clear any previous allocation records */
30 if (isset($_SESSION['alloc']))
32 unset($_SESSION['alloc']->allocs);
33 unset($_SESSION['alloc']);
35 if (!isset($_POST['customer_id']))
36 $_POST['customer_id'] = get_global_customer();
38 echo "<center>" . _("Select a customer: ") . " ";
39 customer_list('customer_id', $_POST['customer_id'], true, true);
41 check(_("Show Settled Items:"), 'ShowSettled', null, true);
42 echo "</center><br><br>";
44 set_global_customer($_POST['customer_id']);
46 if (isset($_POST['customer_id']) && ($_POST['customer_id'] == reserved_words::get_all()))
48 unset($_POST['customer_id']);
51 /*if (isset($_POST['customer_id'])) {
52 $custCurr = get_customer_currency($_POST['customer_id']);
53 if (!is_company_currency($custCurr))
54 echo _("Customer Currency:") . $custCurr;
58 if (check_value('ShowSettled'))
62 if (isset($_POST['customer_id']))
63 $customer_id = $_POST['customer_id'];
65 $trans_items = get_allocatable_from_cust_transactions($customer_id, $settled);
66 div_start('alloc_tbl');
67 start_table($table_style);
68 if (!isset($_POST['customer_id']))
69 $th = array(_("Transaction Type"), _("#"), _("Reference"), _("Date"), _("Customer"),
70 _("Currency"), _("Total"), _("Left To Allocate"), "");
72 $th = array(_("Transaction Type"), _("#"), _("Reference"), _("Date"),
73 _("Total"), _("Left To Allocate"), "");
75 $k = 0; //row colour counter
76 $has_settled_items = false;
78 while ($myrow = db_fetch($trans_items))
80 if ($myrow["settled"] == 1)
82 start_row("class='settledbg'");
83 $has_settled_items = true;
87 alt_table_row_color($k);
90 label_cell(systypes::name($myrow["type"]));
91 label_cell(get_trans_view_str($myrow["type"], $myrow["trans_no"]));
92 label_cell($myrow["reference"]);
93 label_cell(sql2date($myrow["tran_date"]));
95 if (!isset($_POST['customer_id']))
97 label_cell($myrow["DebtorName"]);
98 label_cell($myrow["curr_code"]);
100 amount_cell($myrow["Total"]);
101 amount_cell($myrow["Total"] - $myrow["alloc"]);
102 label_cell("<a href='$path_to_root/sales/allocations/customer_allocate.php?trans_no="
103 .$myrow["trans_no"] . "&trans_type=" . $myrow["type"] . "'>" . _("Allocate") . "</a>");
109 if ($has_settled_items)
110 display_note(_("Marked items are settled."), 0, 1, "class='settledfg'");
112 if (db_num_rows($trans_items) == 0)
113 display_note(_("There are no allocations to be done."), 1, 2);
118 //--------------------------------------------------------------------------------
119 if (get_post('_ShowSettled_update')) {
120 $Ajax->activate('alloc_tbl');
122 display_allocatable_transactions();
124 //--------------------------------------------------------------------------------