function confirm($_POST) { # Get vars extract($_POST); if (isset($back)) { header("Location: cashbook-entry.php"); exit; } # validate input require_lib("validate"); $v = new validate(); $v->isOk($bankid, "num", 1, 30, "Invalid Bank Account."); $v->isOk($o_day, "num", 1, 2, "Invalid Date day."); $v->isOk($o_month, "num", 1, 2, "Invalid Date month."); $v->isOk($o_year, "num", 1, 4, "Invalid Date Year."); $v->isOk($name, "string", 1, 255, "Invalid Person/Business paid to/received from."); $v->isOk($descript, "string", 0, 255, "Invalid Description."); $v->isOk($reference, "string", 0, 255, "Invalid Description."); $v->isOk($cheqnum, "num", 0, 30, "Invalid Cheque number."); $v->isOk($amount, "float", 1, 10, "Invalid amount."); $v->isOk($chrgvat, "string", 1, 4, "Invalid vat option."); $v->isOk($accinv, "num", 1, 20, "Invalid Account involved."); $date = mkdate($o_year, $o_month, $o_day); $v->isOk($date, "date", 1, 1, "Invalid date."); if ($v->isError()) { $err = $v->genErrors(); return $err . add($_POST); } # Start rattling vat $totamt = $amount; vsprint($vat); if ($vatcode != $orig_vatcode || $amount != $orig_amount || $chrgvat != $orig_chrgvat) { db_conn('cubit'); $Sl = "SELECT * FROM vatcodes WHERE id='{$vatcode}'"; $Ri = db_exec($Sl) or errDie("Unable to get vat codes"); $vd = pg_fetch_array($Ri); $vatp = $vd['vat_amount']; if ($chrgvat == "exc") { $vat = sprint($vatp / 100 * $amount); } else { if ($chrgvat == "inc") { $vat = sprint($amount * $vatp / ($vatp + 100)); } else { $vat = 0; } } } if ($chrgvat == "exc") { $totamt += $vat; $vatin = CUR . "<input type='text' name='vat' value='{$vat}' />"; } else { if ($chrgvat == "inc") { $vatin = CUR . "<input type='text' name='vat' value='{$vat}' />"; } else { $vatin = "No VAT"; } } $OUT = "\n\t\t\t<center>\n\t\t\t<h3>Edit Bank Receipt</h3>\n\t\t\t<h4>Confirm entry (Please check the details)</h4>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<form action='" . SELF . "' method='POST'>\n\t\t\t\t<input type='hidden' name='key' value='write' />\n\t\t\t\t<input type='hidden' name='id' value='{$id}' />\n\t\t\t\t<input type='hidden' name='bankid' value='{$bankid}' />\n\t\t\t\t<input type='hidden' name='date' value='{$date}' />\n\t\t\t\t<input type='hidden' name='name' value='{$name}' />\n\t\t\t\t<input type='hidden' name='descript' value='{$descript}' />\n\t\t\t\t<input type='hidden' name='reference' value='{$reference}' />\n\t\t\t\t<input type='hidden' name='cheqnum' value='{$cheqnum}' />\n\t\t\t\t<input type='hidden' name='amount' value='{$amount}' />\n\t\t\t\t<input type='hidden' name='chrgvat' value='{$chrgvat}' />\n\t\t\t\t<input type='hidden' name='accinv' value='{$accinv}' />\n\t\t\t\t<input type='hidden' name='vatcode' value='{$vatcode}' />"; # Get bank account name db_connect(); $sql = "SELECT accname,bankname FROM bankacct WHERE bankid = '{$bankid}' AND div = '" . USER_DIV . "'"; $bankRslt = db_exec($sql); $bank = pg_fetch_array($bankRslt); # get hook account number core_connect(); $sql = "SELECT * FROM bankacc WHERE accid = '{$bankid}' AND div = '" . USER_DIV . "'"; $rslt = db_exec($sql) or errDie("Unable to retrieve bank account link from Cubit", SELF); # check if link exists if (pg_numrows($rslt) < 1) { return "<li class=err> ERROR : The bank account that you selected doesn't appear to have an account linked to it."; } $banklnk = pg_fetch_array($rslt); # Get bank balance $sql = "SELECT (debit - credit) as bal FROM trial_bal WHERE period='" . getPRDDB($date) . "' AND accid = '{$banklnk['accnum']}' AND div = '" . USER_DIV . "'"; $brslt = db_exec($sql) or errDie("Unable to retrieve bank account link from Cubit", SELF); $bal = pg_fetch_array($brslt); $accRslt = get("core", "accname,topacc,accnum", "accounts", "accid", $accinv); $accnt = pg_fetch_array($accRslt); $OUT .= "\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th>Field</th>\n\t\t\t\t\t\t<th>Value</th>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Account</td>\n\t\t\t\t\t\t<td>{$bank['accname']} - {$bank['bankname']}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Account Balance</td>\n\t\t\t\t\t\t<td>" . CUR . " {$bal['bal']}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Date</td>\n\t\t\t\t\t\t<td valign='center'>{$date}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Received from</td>\n\t\t\t\t\t\t<td valign='center'>{$name}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Description</td>\n\t\t\t\t\t\t<td valign='center'>{$descript}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Reference</td>\n\t\t\t\t\t\t<td valign='center'>{$reference}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Cheque Number</td>\n\t\t\t\t\t\t<td valign='center'>{$cheqnum}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>Amount</td>\n\t\t\t\t\t\t<td valign='center'>" . CUR . " " . sprint($totamt) . "</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='bg-odd'>\n\t\t\t\t\t\t<td>VAT </td>\n\t\t\t\t\t\t<td>{$vatin}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr class='bg-even'>\n\t\t\t\t\t\t<td>Ledger Account Received from</td>\n\t\t\t\t\t\t<td valign='center'>{$accnt['topacc']}/{$accnt['accnum']} - {$accnt['accname']}</td>\n\t\t\t\t\t</tr>\n\t\t\t\t \t" . TBL_BR . "\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td> </td>\n\t\t\t\t\t\t<td align='right'><input type='submit' value='Write »'></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</form>\n\t\t\t\t</table>" . mkQuickLinks(); return $OUT; }
function confirm($_POST) { # Get vars extract($_POST); if (isset($back)) { header("Location: cashbook-entry.php"); exit; } # validate input require_lib("validate"); $v = new validate(); $v->isOk($bankid, "num", 1, 30, "Invalid Bank Account."); $v->isOk($date_day, "num", 1, 2, "Invalid Date day."); $v->isOk($date_month, "num", 1, 2, "Invalid Date month."); $v->isOk($date_year, "num", 1, 4, "Invalid Date Year."); if (strlen($date_year) != 4) { $v->isOk($bankname, "num", 1, 1, "Invalid Date year."); } $v->isOk($name, "string", 1, 255, "Invalid Person/Business paid to."); $v->isOk($descript, "string", 0, 255, "Invalid Description."); $v->isOk($reference, "string", 0, 50, "Invalid Reference Name/Number."); $v->isOk($cheqnum, "num", 0, 30, "Invalid Cheque number."); $v->isOk($amount, "float", 1, 10, "Invalid amount."); $v->isOk($chrgvat, "string", 1, 4, "Invalid vat option."); $v->isOk($accinv, "num", 1, 20, "Invalid Account type (account involved)."); $date = $date_day . "-" . $date_month . "-" . $date_year; if (!checkdate($date_month, $date_day, $date_year)) { $v->isOk($date, "num", 1, 1, "Invalid date."); } # display errors, if any if ($v->isError()) { $confirm = ""; $errors = $v->getErrors(); foreach ($errors as $e) { $confirm .= "<li class='err'>" . $e["msg"] . "</li>"; } //$confirm .= "<p><input type=button onClick='JavaScript:history.back();' value='« Correct submission'>"; return $confirm . add($_POST); } $blocked_date_from = getCSetting("BLOCKED_FROM"); $blocked_date_to = getCSetting("BLOCKED_TO"); if (strtotime($date) >= strtotime($blocked_date_from) and strtotime($date) <= strtotime($blocked_date_to) and !user_is_admin(USER_ID)) { return "<li class='err'>Period Range Is Blocked. Only an administrator can process entries within this period.</li>"; } # Get bank account name db_connect(); $sql = "SELECT accname,bankname FROM bankacct WHERE bankid = '{$bankid}' AND div = '" . USER_DIV . "'"; $bankRslt = db_exec($sql); $bank = pg_fetch_array($bankRslt); # get hook account number core_connect(); $sql = "SELECT * FROM bankacc WHERE accid = '{$bankid}' AND div = '" . USER_DIV . "'"; $rslt = db_exec($sql) or errDie("Unable to retrieve bank account link from Cubit", SELF); # check if link exists if (pg_numrows($rslt) < 1) { return "<li class='err'> ERROR : The bank account that you selected doesn't appear to have an account linked to it.</li>"; } $banklnk = pg_fetch_array($rslt); # Get bank balance $sql = "SELECT (debit - credit) as bal FROM trial_bal WHERE period='" . getPRDDB($date) . "' AND accid = '{$banklnk['accnum']}' AND div = '" . USER_DIV . "'"; $brslt = db_exec($sql) or errDie("Unable to retrieve bank account link from Cubit", SELF); $bal = pg_fetch_array($brslt); # Get account name $accRslt = get("core", "accname,topacc,accnum", "accounts", "accid", $accinv); $accnt = pg_fetch_array($accRslt); # Start rattling vat // $vatp = TAX_VAT; $totamt = $amount; $vatcode += 0; db_conn('cubit'); $Sl = "SELECT * FROM vatcodes WHERE id='{$vatcode}'"; $Ri = db_exec($Sl) or errDie("Unable to get vat codes"); $vd = pg_fetch_array($Ri); $vatp = $vd['vat_amount']; // if(pg_num_rows($Ri)>0) { // $chrgvat="no"; // } if ($chrgvat == "exc") { $vat = "<input type='text' name='vat' value='" . sprint($vatp / 100 * $amount) . "'>"; $totamt += $vat; } elseif ($chrgvat == "inc") { //$vat=sprint((sprint($amount*100/(100+$vatp)))*$vatp/100); $vat = "<input type='text' name='vat' value='" . sprint($amount * $vatp / ($vatp + 100)) . "'>"; //$vat = sprint(($amount/(100 + $vatp)) * $vatp); } else { $vat = "No VAT"; } # Layout $confirm = "\n\t\t<center>\n\t\t<h3>New Bank Payment</h3>\n\t\t<h4>Confirm entry (Please check the details)</h4>\n\t\t<table " . TMPL_tblDflts . " width='60%'>\n\t\t<form action='" . SELF . "' method='POST'>\n\t\t\t<input type='hidden' name='key' value='write'>\n\t\t\t<input type='hidden' name='bankid' value='{$bankid}'>\n\t\t\t<input type='hidden' name='date' value='{$date}'>\n\t\t\t<input type='hidden' name='name' value='{$name}'>\n\t\t\t<input type='hidden' name='descript' value='{$descript}'>\n\t\t\t<input type='hidden' name='reference' value='{$reference}'>\n\t\t\t<input type='hidden' name='cheqnum' value='{$cheqnum}'>\n\t\t\t<input type='hidden' name='amount' value='{$amount}'>\n\t\t\t<input type='hidden' name='chrgvat' value='{$chrgvat}'>\n\t\t\t<input type='hidden' name='accinv' value='{$accinv}'>\n\t\t\t<input type='hidden' name='vatcode' value='{$vatcode}'>\n\t\t\t<input type='hidden' name='date_year' value='{$date_year}'>\n\t\t\t<input type='hidden' name='date_month' value='{$date_month}'>\n\t\t\t<input type='hidden' name='date_day' value='{$date_day}'>\n\t\t\t<tr>\n\t\t\t\t<th>Field</th>\n\t\t\t\t<th>Value</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Account</td>\n\t\t\t\t<td>{$bank['accname']} - {$bank['bankname']}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Account Balance</td>\n\t\t\t\t<td>" . CUR . " {$bal['bal']}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Date</td>\n\t\t\t\t<td valign='center'>{$date}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Paid to</td>\n\t\t\t\t<td valign='center'>{$name}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Description</td>\n\t\t\t\t<td valign='center'>{$descript}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Reference</td>\n\t\t\t\t<td valign='center'>{$reference}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Cheque Number</td>\n\t\t\t\t<td valign='center'>{$cheqnum}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Amount</td>\n\t\t\t\t<td valign='center'>" . CUR . " {$totamt}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>VAT </td>\n\t\t\t\t<td>{$vat}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Ledger Account Paid To</td>\n\t\t\t\t<td valign='center'>{$accnt['topacc']}/{$accnt['accnum']} - {$accnt['accname']}</td>\n\t\t\t</tr>\n\t\t\t<tr><td><br></td></tr>\n\t\t\t<tr>\n\t\t\t\t<td></td>\n\t\t\t\t<td align='right'><input type='submit' name='batch' value='Add to Batch »'></td>\n\t\t\t</tr>\n\t\t\t<tr><td><br></td></tr>\n\t\t\t<tr>\n\t\t\t\t<td><input type='submit' name='back' value='« Correction'></td>\n\t\t\t\t<td align='right'><input type='submit' value='Write »'></td>\n\t\t\t</tr>\n\t\t</form>\n\t\t</table>\n\t\t<p>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th>Quick Links</th>\n\t\t\t</tr>\n\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t</table>"; return $confirm; }