- if (!isset($_POST['charge'])) // first page call
- {
- //Prepare allocation cart
- if (isset($_POST['trans_no']) && $_POST['trans_no'] > 0 )
- $_SESSION['alloc'] = new allocation(ST_CUSTPAYMENT,$_POST['trans_no']);
- else
- {
- $_SESSION['alloc'] = new allocation(ST_CUSTPAYMENT,0);
- $Ajax->activate('alloc_tbl');
- }
- }
-
- if (db_customer_has_branches($_POST['customer_id'])) {
- customer_branches_list_row(_("Branch:"), $_POST['customer_id'], 'BranchID', null, false, true, true);
- } else {
- hidden('BranchID', ANY_NUMERIC);
+if ($new)
+ customer_list_row(_("From Customer:"), 'customer_id', null, false, true);
+else {
+ label_cells(_("From Customer:"), $_SESSION['alloc']->person_name, "class='label'");
+ hidden('customer_id', $_POST['customer_id']);
+}
+
+if (db_customer_has_branches($_POST['customer_id'])) {
+ customer_branches_list_row(_("Branch:"), $_POST['customer_id'], 'BranchID', null, false, true, true);
+} else {
+ hidden('BranchID', ANY_NUMERIC);
+}
+
+if (list_updated('customer_id') || ($new && list_updated('bank_account'))) {
+ $_SESSION['alloc']->set_person($_POST['customer_id'], PT_CUSTOMER);
+ $_SESSION['alloc']->read();
+ $_POST['memo_'] = $_POST['amount'] = $_POST['discount'] = '';
+ if (list_updated('customer_id')) {
+ $dflt_act = get_default_bank_account($_SESSION['alloc']->person_curr);
+ $_POST['bank_account'] = $dflt_act['id'];