X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=gl%2Fbank_account_reconcile.php;h=a5738946451ea7385e6890a128de1b3dd48d939b;hb=13fae1ba1d78cff66e326a006be2f538dd404248;hp=b6a5355de0d640318951cb423e5dac1956bbd9df;hpb=50606312fee0bb0dbe984e2c08af53b7dab229bd;p=fa-stable.git diff --git a/gl/bank_account_reconcile.php b/gl/bank_account_reconcile.php index b6a5355d..a5738946 100644 --- a/gl/bank_account_reconcile.php +++ b/gl/bank_account_reconcile.php @@ -9,7 +9,6 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License here . ***********************************************************************/ -/* Author Rob Mallon */ $page_security = 'SA_RECONCILE'; $path_to_root = ".."; include($path_to_root . "/includes/db_pager.inc"); @@ -23,9 +22,9 @@ include_once($path_to_root . "/gl/includes/gl_db.inc"); include_once($path_to_root . "/includes/banking.inc"); $js = ""; -if ($use_popup_windows) +if ($SysPrefs->use_popup_windows) $js .= get_js_open_window(800, 500); -if ($use_date_picker) +if (user_use_date_picker()) $js .= get_js_date_picker(); add_js_file('reconcile.js'); @@ -53,8 +52,8 @@ function rec_checkbox($row) $value = $row['reconciled'] != ''; // save also in hidden field for testing during 'Reconcile' - return checkbox(null, $name, $value, true, _('Reconcile this transaction')) - . hidden($hidden, $value, false); + return is_closed_trans($row['type'], $row['trans_no']) ? "--" : checkbox(null, $name, $value, true, _('Reconcile this transaction')) + . hidden($hidden, $value, false); } function systype_name($dummy, $type) @@ -86,20 +85,24 @@ function fmt_credit($row) return $value>0 ? price_format($value) : ''; } -function fmt_person($row) +function fmt_person($trans) { return get_counterparty_name($trans["type"], $trans["trans_no"]); } -$update_pager = false; +function fmt_memo($row) +{ + $value = $row["memo_"]; + return $value; +} + function update_data() { - global $Ajax, $update_pager; + global $Ajax; unset($_POST["beg_balance"]); unset($_POST["end_balance"]); $Ajax->activate('summary'); - $update_pager = true; } //--------------------------------------------------------------------------------------------- // Update db record if respective checkbox value has changed. @@ -127,6 +130,26 @@ function change_tpl_flag($reconcile_id) return true; } +function set_tpl_flag($reconcile_id) +{ + global $Ajax; + + if (check_value("rec_".$reconcile_id)) + return; + + if (get_post('bank_date')=='') // new reconciliation + $Ajax->activate('bank_date'); + + $_POST['bank_date'] = date2sql(get_post('reconcile_date')); + $reconcile_value = ("'".$_POST['bank_date'] ."'"); + + update_reconciled_values($reconcile_id, $reconcile_value, $_POST['reconcile_date'], + input_num('end_balance'), $_POST['bank_account']); + + $Ajax->activate('reconciled'); + $Ajax->activate('difference'); +} + if (!isset($_POST['reconcile_date'])) { // init page $_POST['reconcile_date'] = new_doc_date(); // $_POST['bank_date'] = date2sql(Today()); @@ -151,11 +174,21 @@ $id = find_submit('_rec_'); if ($id != -1) change_tpl_flag($id); + if (isset($_POST['Reconcile'])) { set_focus('bank_date'); foreach($_POST['last'] as $id => $value) if ($value != check_value('rec_'.$id)) if(!change_tpl_flag($id)) break; + + $Ajax->activate('_page_body'); +} + +if (isset($_POST['ReconcileAll'])) { + set_focus('bank_date'); + foreach($_POST['last'] as $id => $value) + set_tpl_flag($id); + $Ajax->activate('_page_body'); } @@ -223,7 +256,7 @@ echo "
"; if (!isset($_POST['bank_account'])) $_POST['bank_account'] = ""; -$sql = get_sql_for_bank_account_reconcile($_POST['bank_account'], get_post('reconcile_date')); +$sql = get_sql_for_bank_account_reconcile(get_post('bank_account'), get_post('reconcile_date')); $act = get_bank_account($_POST["bank_account"]); display_heading($act['bank_account_name']." - ".$act['bank_curr_code']); @@ -237,6 +270,7 @@ display_heading($act['bank_account_name']." - ".$act['bank_curr_code']); _("Debit") => array('align'=>'right', 'fun'=>'fmt_debit'), _("Credit") => array('align'=>'right','insert'=>true, 'fun'=>'fmt_credit'), _("Person/Item") => array('fun'=>'fmt_person'), + _("Memo") => array('fun'=>'fmt_memo'), array('insert'=>true, 'fun'=>'gl_view'), "X"=>array('insert'=>true, 'fun'=>'rec_checkbox') ); @@ -246,12 +280,13 @@ display_heading($act['bank_account_name']." - ".$act['bank_curr_code']); display_db_pager($table); br(1); -submit_center('Reconcile', _("Reconcile"), true, '', null); - +echo '
'; +submit('Reconcile', _("Reconcile"), true, '', null); +submit('ReconcileAll', _("Reconcile All"), true, ''); +echo '
'; end_form(); //------------------------------------------------------------------------------------------------ end_page(); -?> \ No newline at end of file