function printcheq()
{
    // Set up table to display in
    $OUTPUT = "<h3>View Cheque Records</h3>\r\n        <table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n        <form action='../bank/bank-bankall.php' method=post>\r\n        <tr><th>Bank Name</th><th>Account Name</th><th>Date</th><th>Paid to/Received from</th><th>Description</th><th>Transaction Type</th><th>Amount</th><th>Account paid<br>/received from</th></tr>";
    // Connect to database
    db_Connect();
    $sql = "SELECT * FROM cashbook WHERE cheqnum > 0 and banked='no' AND div = '" . USER_DIV . "' ORDER BY date DESC";
    $accntRslt = db_exec($sql) or errDie("ERROR: Unable to retrieve bank cheqque transaction details from database.", SELF);
    $numrows = pg_numrows($accntRslt);
    if ($numrows < 1) {
        $OUTPUT = "<li class=err> There are no outstanding bank cheque Records yet in Cubit.";
        require "../template.php";
    }
    # display all bank cheques
    for ($i = 0; $i < $numrows; $i++) {
        $accnt = pg_fetch_array($accntRslt, $i);
        # get account name for account involved
        $accRslt = get("core", "accname", "accounts", "accid", $accnt['accinv']);
        $acc = pg_fetch_array($accRslt);
        # get account name for bank account
        db_connect();
        $sql = "SELECT accname,bankname  FROM bankacct WHERE bankid= '{$accnt['bankid']}' AND div = '" . USER_DIV . "'";
        $bankRslt = db_exec($sql);
        $bank = pg_fetch_array($bankRslt);
        $OUTPUT .= "<tr class='" . bg_class() . "'><td>{$bank['bankname']}</td><td align=center>{$bank['accname']}</td><td align=center>{$accnt['date']}</td><td align=center>{$accnt['name']}</td><td>{$accnt['descript']}</td><td align=center>{$accnt['trantype']}</td><td align=center>" . CUR . " {$accnt['amount']}<td align=center>{$acc['accname']}</td></td>";
        if ($accnt['banked'] == "no") {
            $OUTPUT .= "<td><input type=checkbox name='bank[]' value='{$accnt['cashid']}'>&nbsp;<a href='../bank/bank-bank.php?cashid={$accnt['cashid']}'>Bank</td><td><a href='../bank/cheq-cancel.php?cashid={$accnt['cashid']}'>Cancel</td></tr>";
        } else {
            $OUTPUT .= "</tr>";
        }
    }
    $OUTPUT .= "<tr><td colspan=8><br></td><td colspan=2><input type=submit value='Bank all selected'></td></tr></form></table>";
    // all template to display the info and die
    require "../template.php";
}
function slctacc()
{
    # from period
    $prds = "<select name=prd>";
    db_conn(YR_DB);
    $sql = "SELECT * FROM info WHERE prdname !=''";
    $prdRslt = db_exec($sql);
    if (pg_numrows($prdRslt) < 1) {
        return "<li class=err>ERROR : There are no periods set for the current year";
    }
    while ($prd = pg_fetch_array($prdRslt)) {
        if ($prd['prddb'] == PRD_DB) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $prds .= "<option value='{$prd['prddb']}' {$sel}>{$prd['prdname']}</option>";
    }
    $prds .= "</select>";
    db_connect();
    $sql = "SELECT * FROM customers WHERE div = '" . USER_DIV . "' ORDER BY cusnum ASC";
    $cusRslt = db_exec($sql) or errDie("Could not retrieve Customers Information from the Database.", SELF);
    if (pg_numrows($cusRslt) < 1) {
        return "<li class=err> There are no Customers in Cubit.";
    }
    $custs = "<select name=cusnums[] multiple size=10>";
    while ($cus = pg_fetch_array($cusRslt)) {
        $custs .= "<option value='{$cus['cusnum']}'>{$cus['cusname']} {$cus['surname']}</option>";
    }
    $custs .= "</select>";
    $slctacc = "\n\t<p>\n\t<h3>Debtors Ledger</h3>\n\t<h4>Select Options</h4>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<form action='" . SELF . "' method=post>\n\t<input type=hidden name=key value=viewtran>\n\t<tr><th>Field</th><th>Value</th></tr>\n\t<tr class='bg-even'><td valign=top>Customers</td><td><input type=radio name=accnt value=slct checked=yes>Selected Accounts | <input type=radio name=accnt value=all>All Accounts</td></tr>\n\t<tr class='bg-odd'><td valign=top>Select Customer(s)</td><td>{$custs}</td></tr>\n\t<tr class='bg-even'><td>Select period</td><td>{$prds}</td></tr>\n\t<tr class='bg-odd'><td>Order By</td><td>Transaction Date<input type=radio name=t checked value='t'>System Date<input type=radio name=t value='s'></td></tr>\n\t<tr><td><br></td></tr>\n\t<tr><td></td><td align=right><input type=submit value='Continue &raquo;'></td></tr>\n\t</table>\n\t<p>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=25%>\n\t\t<tr><td><br></td></tr>\n\t\t<tr><th>Quick Links</th></tr>\n\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t</table>";
    return $slctacc;
}
function confirm($cashid)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($cashid, "num", 1, 20, "Invalid Reference number.");
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>" . $e["msg"];
        }
        $confirm .= "<p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirm;
    }
    # Connect to database
    db_Connect();
    $sql = "SELECT * FROM pettycashbook WHERE cashid = '{$cashid}' AND div = '" . USER_DIV . "'";
    $cashRslt = db_exec($sql) or errDie("ERROR: Unable to retrieve cashbook entry details from database.", SELF);
    if (pg_numrows($cashRslt) < 1) {
        $OUTPUT = "<li clss=err>Requisistion not found in Cubit.";
        return $OUTPUT;
    }
    $cash = pg_fetch_array($cashRslt);
    # Get account name for the account involved
    $accRslt = get("core", "accname,accnum,topacc", "accounts", "accid", $cash['accid']);
    $acc = pg_fetch_array($accRslt);
    // Layout
    $confirm = "<h3>Cancel Requisistion</h3>\r\n\t<h4>Confirm entry</h4>\r\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t<form action='" . SELF . "' method=post>\r\n\t<input type=hidden name=key value=cancel>\r\n\t<input type=hidden name=cashid value='{$cash['cashid']}'>\r\n\t<tr><th>Field</th><th>Value</th></tr>\r\n\t<tr class='bg-odd'><td>Date</td><td>{$cash['date']}</td></tr>\r\n\t<tr class='bg-even'><td>Paid to</td><td>{$cash['name']}</td></tr>\r\n\t<tr class='bg-odd'><td>Details</td><td><pre>{$cash['det']}</pre></td></tr>\r\n\t<tr class='bg-even'><td>Amount</td><td>" . CUR . " {$cash['amount']}</td></tr>\r\n\t<tr class='bg-odd'><td>Account</td><td>{$acc['topacc']}/{$acc['accnum']} - {$acc['accname']}</td></tr>\r\n\t<tr><td><br></td></tr>\r\n\t<tr><td\t><input type=button value='&laquo Back' onClick='javascript:history.back()'></td><td align=right><input type=submit value='Cancel &raquo'></td></tr>\r\n\t</table></form>\r\n\t<p>\r\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=15%>\r\n\t\t<tr><th>Quick Links</th></tr>\r\n\t\t<tr class='bg-odd'><td><a href='pettycashbook-view.php'>View Petty Cash Requisitions</a></td></tr>\r\n\t\t<tr class='bg-odd'><td><a href='../main.php'>Main Menu</a></td></tr>\r\n\t</table>";
    return $confirm;
}
function confirmPaye($_GET)
{
    # get vars
    foreach ($_GET as $key => $value) {
        ${$key} = $value;
    }
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($id, "num", 1, 20, "Invalid PAYE ID.");
    # display errors, if any
    if ($v->isError()) {
        $confirmCust = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirmCust .= "<li class=err>" . $e["msg"];
        }
        $confirmCust .= "<p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirmCust;
    }
    # connect to db
    db_connect();
    # select paye bracket
    $sql = "SELECT * FROM paye WHERE id='{$id}'";
    $payeRslt = db_exec($sql) or errDie("Unable to select PAYE bracket from database.", SELF);
    if (pg_numrows($payeRslt) < 1) {
        return "No PAYE brackets found in database.";
    }
    # get result
    $myPaye = pg_fetch_array($payeRslt);
    $confirmPaye = "\n<h3>Confirm removal of PAYE bracket</h3>\n\n<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n<form action='" . SELF . "' method=post>\n<input type=hidden name=key value=write>\n<input type=hidden name=id value='{$myPaye['id']}'>\n<tr><th>Field</th><th>Value</th></tr>\n<tr class='bg-odd'><td>Minimum gross</td><td align=right>" . CUR . " {$myPaye['min']}</td></tr>\n<tr class='bg-even'><td>Maximum gross</td><td align=right>" . CUR . " {$myPaye['max']}</td></tr>\n<tr class='bg-odd'><td>Percentage</td><td align=right>{$myPaye['percentage']}%</td></tr>\n<tr class='bg-even'><td>Cash amount extra</td><td align=right>" . CUR . " {$myPaye['extra']}</td></tr>\n<tr><td><br></td><td align=right><input type=submit value='Remove PAYE bracket &raquo;'></td></tr>\n</form>\n</table>" . mkQuickLinks(ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $confirmPaye;
}
function allocate_centers($_POST)
{
    extract($_POST);
    if (!isset($adds) or !is_array($adds)) {
        return get_allocation($_POST, "<li class='err'>Please select at least one Cost Center to add.</li>");
    }
    if (!isset($project) or strlen($project) < 1) {
        return "<li class='err'>Invalid Use Of Module. (Invalid Project)</li>";
    }
    if (!isset($subsub) or strlen($subsub) < 1) {
        return "<li class='err'>Invalid Use Of Module. (Invalid Sub Sub Project)</li>";
    }
    db_connect();
    $get_pro2 = "SELECT sub_project_id FROM sub_sub_projects WHERE id = '{$subsub}' LIMIT 1";
    $run_pro2 = db_exec($get_pro2) or errDie("Unable to get sub project information.");
    if (pg_numrows($run_pro2) < 1) {
        $project2 = "";
    } else {
        $parr = pg_fetch_array($run_pro2);
        $project2 = $parr['sub_project_id'];
    }
    foreach ($adds as $each) {
        $ins_sql = "DELETE FROM costcenters_links WHERE ccid = '{$each}' AND project1 = '{$project}' AND project3 = '{$subsub}'";
        $run_ins = db_exec($ins_sql) or errDie("Unable to add cost center information.");
    }
    header("Location: costcenter-allocation-rem.php?project={$project}&subsub={$subsub}");
}
function start_maint()
{
    custom_db("cubit");
    pg_exec("VACUUM");
    pg_exec("VACUUM FULL");
    pg_exec("VACUUM ANALYZE");
    pg_exec("REINDEX DATABASE cubit");
    $get_comps = "SELECT * FROM companies WHERE status = 'active'";
    $run_comps = pg_exec($get_comps) or errDie("Unable to get active companies");
    if (pg_numrows($run_comps) < 1) {
        return "<li class='err'>No Active Companies Found To Process.</li>";
    } else {
        #process the blk1 db
        custom_db("cubit_blk1");
        pg_exec("VACUUM");
        pg_exec("VACUUM FULL");
        pg_exec("VACUUM ANALYZE");
        pg_exec("REINDEX DATABASE cubit_blk1");
        #process the active companies
        while ($carr = pg_fetch_array($run_comps)) {
            $company = "cubit_" . $carr['code'];
            custom_db("{$company}");
            pg_exec("VACUUM");
            pg_exec("VACUUM FULL");
            pg_exec("VACUUM ANALYZE");
            pg_exec("REINDEX DATABASE {$company}");
        }
    }
    $display = "\r\n\t\t<table " . TMPL_tblDflts . ">\r\n\t\t\t<tr>\r\n\t\t\t\t<td><li class='err'>Process Has Been Completed.</li></td>\r\n\t\t\t</tr>\r\n\t\t</table>";
    return $display;
}
function edit($div)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($div, "num", 1, 50, "Invalid branch id.");
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>{$e['msg']}</li>";
        }
        return $confirm;
    }
    # Select Branch
    db_connect();
    $sql = "SELECT * FROM branches WHERE div = '{$div}'";
    $branRslt = db_exec($sql) or errDie("Unable to access databse.", SELF);
    if (pg_numrows($branRslt) < 1) {
        return "<li> Invalid Branch ID.";
    } else {
        $bran = pg_fetch_array($branRslt);
    }
    // layout
    $edit = "<h3>Edit Branch Branch</h3>\r\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t<form action='" . SELF . "' method=post>\r\n\t<input type=hidden name=key value=confirm>\r\n\t<input type=hidden name=div value='{$div}'>\r\n\t<tr><th>Field</th><th>Value</th></tr>\r\n\t<tr class='bg-odd'><td>Branch code</td><td><input type=text size=20 name='brancod' value='{$bran['brancod']}'></td></tr>\r\n\t<tr class='bg-even'><td>" . REQ . "Branch name</td></td><td><input type=text size=20 name='branname' value='{$bran['branname']}'></td></tr>\r\n\t<tr class='bg-odd'><td valign=top>Details</td><td><textarea cols=18 rows=5 name='brandet'>{$bran['brandet']}</textarea></td></tr>\r\n\t<tr><td><br></td></tr>\r\n\t<tr><td></td><td align=right><input type=submit value='Confirm &raquo'></td></tr>\r\n\t</form>\r\n\t</table>\r\n\t<p>\r\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t<tr><th>Quick Links</th></tr>\r\n\t<tr class='bg-odd'><td><a href='admin-branview.php'>View Branches</a></td></tr>\r\n\t<tr class='bg-odd'><td><a href='main.php'>Main Menu</a></td></tr>\r\n\t</table>";
    return $edit;
}
function show_image($_POST)
{
    extract($_POST);
    if (!isset($picid)) {
        return "";
    }
    db_connect();
    $get_img = "SELECT type,ident_id FROM display_images WHERE id = '{$picid}' LIMIT 1";
    $run_img = db_exec($get_img) or errDie("Unable to get image information.");
    if (pg_numrows($run_img) < 1) {
        #image not found ??
        $previous = "";
        $next = "";
    } else {
        $arr = pg_fetch_array($run_img);
        $previous = "";
        $next = "";
        #check for any additional images for this member
        #get prev button
        $get_other = "SELECT id FROM display_images WHERE type = '{$arr['type']}' AND ident_id = '{$arr['ident_id']}' AND id < '{$picid}' ORDER BY id desc LIMIT 1";
        $run_other = db_exec($get_other) or errDie("Unable to get images information.");
        if (pg_numrows($run_other) > 0) {
            $previous = "<input type='button' onCLick=\"document.location='view_image.php?picid=" . pg_fetch_result($run_other, 0, 0) . "'\" value='Previous'>";
        }
        $get_other = "SELECT id FROM display_images WHERE type = '{$arr['type']}' AND ident_id = '{$arr['ident_id']}' AND id > '{$picid}' LIMIT 1";
        $run_other = db_exec($get_other) or errDie("Unable to get images information.");
        if (pg_numrows($run_other) > 0) {
            $next = "<input type='button' onCLick=\"document.location='view_image.php?picid=" . pg_fetch_result($run_other, 0, 0) . "'\" value='Next'>";
        }
    }
    $buttons = "<tr height='20%' valign='bottom'><td width='40%' align='right'>{$previous}</td><td>{$next}</td></tr>";
    $display = "\n\t\t\t\t\t<table " . TMPL_tblDflts . " height='95%' width='100%'>\n\t\t\t\t\t\t<tr height='80%'>\n\t\t\t\t\t\t\t<td colspan='2'><img src='show_dimg.php?picid={$picid}' width='160' height='185' border='1'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t{$buttons}\n\t\t\t\t\t</table>\n\t\t\t\t";
    return $display;
}
function do_search()
{
    global $_POST;
    extract($_POST);
    db_connect();
    $search_sql = "SELECT * FROM training WHERE course_name LIKE '%{$search_string}%' OR other_details LIKE '%{$search_string}%' LIMIT 25";
    $run_search = db_exec($search_sql);
    if (pg_numrows($run_search) < 1) {
        $results = "";
    } else {
        $results = "";
        $i = 0;
        while ($tarr = pg_fetch_array($run_search)) {
            $empval = $tarr['empnum'];
            $tarr['empnum'] = $empval + 0;
            #get this employee name
            $get_emp = "SELECT fnames,sname FROM employees WHERE empnum = '{$tarr['empnum']}' LIMIT 1";
            $run_emp = db_exec($get_emp);
            if (pg_numrows($run_emp) < 1) {
                $employee_name = "Unknown";
            } else {
                $earr = pg_fetch_array($run_emp);
                $employee_name = "{$earr['fnames']} {$earr['sname']}";
            }
            $results .= "\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>{$employee_name}</td>\n\t\t\t\t\t\t<td>{$tarr['course_name']}</td>\n\t\t\t\t\t\t<td>{$tarr['date_date']}</td>\n\t\t\t\t\t\t<td>{$tarr['commence_date']}</td>\n\t\t\t\t\t\t<td>{$tarr['completed_date']}</td>\n\t\t\t\t\t\t<td>{$tarr['competent_date']}</td>\n\t\t\t\t\t\t<td>" . nl2br($tarr['other_details']) . "</td>\n\t\t\t\t\t</tr>";
            $i++;
        }
    }
    $display = "\n\t\t\t<h2>Search Results</h2>\n\t\t\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t\t\t\t<tr>\n\t\t\t\t\t<th>Employee</th>\n\t\t\t\t\t<th>Course Name</th>\n\t\t\t\t\t<th>Enter Date</th>\n\t\t\t\t\t<th>Start Date</th>\n\t\t\t\t\t<th>End Date</th>\n\t\t\t\t\t<th>Competent Date</th>\n\t\t\t\t\t<th>Other Details</th>\n\t\t\t\t</tr>\n\t\t\t\t{$results}\n\t\t\t</table>\n\t\t";
    return $display;
}
function slctacc()
{
    # from period
    $prds = "<select name=prd>";
    db_conn(YR_DB);
    $sql = "SELECT * FROM info WHERE prdname !=''";
    $prdRslt = db_exec($sql);
    if (pg_numrows($prdRslt) < 1) {
        return "<li class=err>ERROR : There are no periods set for the current year";
    }
    while ($prd = pg_fetch_array($prdRslt)) {
        if ($prd['prddb'] == PRD_DB) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $prds .= "<option value='{$prd['prddb']}' {$sel}>{$prd['prdname']}</option>";
    }
    $prds .= "</select>";
    core_connect();
    $sql = "SELECT * FROM accounts WHERE div = '" . USER_DIV . "' ORDER BY accname ASC";
    $accRslt = db_exec($sql) or errDie("Could not retrieve Categories Information from the Database.", SELF);
    if (pg_numrows($accRslt) < 1) {
        return "<li class=err> There are no Accounts in Cubit.";
    }
    $accs = "<select name=accids[] multiple size=10>";
    while ($acc = pg_fetch_array($accRslt)) {
        $accs .= "<option value='{$acc['accid']}'>{$acc['accname']}</option>";
    }
    $accs .= "</select>";
    $slctacc = "\n\t<p>\n\t<h3>General Ledger</h3>\n\t<h4>Select Options</h4>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<form action='" . SELF . "' method=post>\n\t<input type=hidden name=key value=viewtran>\n\t<tr><th>Field</th><th>Value</th></tr>\n\t<tr class='bg-even'><td valign=top>Accounts</td><td><input type=radio name=accnt value=slct checked=yes>Selected Accounts | <input type=radio name=accnt value=all>All Accounts</td></tr>\n\t<tr class='bg-odd'><td valign=top>Select account(s)</td><td>{$accs}</td></tr>\n\t<tr class='bg-even'><td>Select period</td><td>{$prds}</td></tr>\n\t<tr><td><br></td></tr>\n\t<tr><td align=center><input type=button value='&laquo Back' onClick='javascript:history.back()'></td><td align=center><input type=submit value='Continue &raquo;'></td></tr>\n\t</table>\n\t<p>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=25%>\n\t\t<tr><td><br></td></tr>\n\t\t<tr><th>Quick Links</th></tr>\n\t\t<tr class=datacell><td align=center><a target=_blank href='../core/acc-new2.php'>Add account (New Window)</a></td></tr>\n\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t</table>";
    return $slctacc;
}
function view($cusname = "", $addr1 = "", $addr2 = "", $addr3 = "", $paddr1 = "", $paddr2 = "", $paddr3 = "", $tel = "", $fax = "", $email = "", $err = "")
{
    # account paid to
    $stockacc = "<select name='stockacc'>";
    $sql = "SELECT * FROM accounts WHERE acctype ='B'";
    $accRslt = db_exec($sql);
    $numrows = pg_numrows($accRslt);
    if (empty($numrows)) {
        $stockacc = "There are no Balance accounts yet in Cubit.";
    } else {
        while ($acc = pg_fetch_array($accRslt)) {
            $stockacc .= "<option value='{$acc['accid']}'>{$acc['accname']}</option>";
        }
    }
    $stockacc .= "</select>";
    # account paid to
    $paid = "<select name='accpaid'>";
    $sql = "SELECT * FROM accounts WHERE acctype ='B'";
    $accRslt = db_exec($sql);
    $numrows = pg_numrows($accRslt);
    if (empty($numrows)) {
        $paid = "There are no Balance accounts yet in Cubit.";
    } else {
        while ($acc = pg_fetch_array($accRslt)) {
            $paid .= "<option value='{$acc['accid']}'>{$acc['accname']}</option>";
        }
    }
    $paid .= "</select>";
    //layout
    $view = "\r\n<h3>Add New Customer Invoice</h3>\r\n<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=400>\r\n<form action='" . SELF . "' method=post name=form>\r\n<input type=hidden name=key value=details>\r\n{$err}\r\n<tr><th>Field</th><th>Value</th></tr>\r\n<tr class='bg-odd'><td>Customer Name</td><td valign=center><input type=text size=20 name=cusname value='{$cusname}'></td></tr>\r\n<tr class='bg-even'><td rowspan=3 valign=top>Customer Address</td><td valign=center><input type=text size=20 name=addr1 value='{$addr1}'></td></tr>\r\n<tr class='bg-odd'><!-- rowspan --><td><input type=text size=20 name=addr2 value='{$addr2}'></td></tr>\r\n<tr class='bg-even'><!-- rowspan --><td><input type=text size=20 name=addr3 value='{$addr3}'></td></tr>\r\n<tr class='bg-odd'><td rowspan=3 valign=top>Customer Postal Address</td><td valign=center><input type=text size=20 name=paddr1 value='{$paddr1}'></td></tr>\r\n<tr class='bg-even'><!-- rowspan --><td><input type=text size=20 name=paddr2 value='{$paddr2}'></td></tr>\r\n<tr class='bg-odd'><!-- rowspan --><td><input type=text size=20 name=paddr3 value='{$paddr3}'></td></tr>\r\n<tr class='bg-even'><td>Telephone No.</td><td valign=center><input type=text size=10 name=tel value='{$tel}'></td></tr>\r\n<tr class='bg-odd'><td>Fax No.</td><td valign=center><input type=text size=10 name=fax value='{$fax}'></td></tr>\r\n<tr class='bg-even'><td>E-mail Address</td><td valign=center><input type=text size=20 name=email value='{$email}'></td></tr>\r\n<tr class='bg-odd'><td>Order Date</td><td valign=center><input type=text size=2 name=oday maxlength=2>-<input type=text size=2 name=omon maxlength=2 value='" . date("m") . "'>-<input type=text size=4 name=oyear maxlength=4 value='" . date("Y") . "'> DD-MM-YYYY</td></tr>\r\n<tr class='bg-even'><td>Invoice date</td><td valign=center><input type=text size=2 name=invday maxlength=2 value='" . date("d") . "'>-<input type=text size=2 name=invmon maxlength=2 value='" . date("m") . "'>-<input type=text size=4 name=invyear maxlength=4 value='" . date("Y") . "'></td></tr>\r\n<tr class='bg-odd'><td>Account paid</td><td valign=center>{$paid}</td></tr>\r\n<tr class='bg-even'><td>Stock Account (ie. Stock)</td><td valign=center>{$stockacc}</td></tr>\r\n<tr><td><input type=button value='< Cancel' onClick='javascript:history.back();'></td><td valign=center><input type=submit value='Add >'></td></tr>\r\n</form>\r\n</table>";
    return $view;
}
function bal($id)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($id, "num", 1, 20, "Invalid Trial Balance number.");
    # display errors, if any
    if ($v->isError()) {
        $theseErrors = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $theseErrors .= "<li class=err>" . $e["msg"];
        }
        $theseErrors .= "<p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $theseErrors;
    }
    # connect to core DB
    core_connect();
    # get the Trial Balance
    $sql = "SELECT * FROM save_trial_bal WHERE id = '{$id}' AND div = '" . USER_DIV . "'";
    $balRslt = db_exec($sql) or errDie("Unable to retrieve Trial Balance from the Database", SELF);
    if (pg_numrows($balRslt) < 1) {
        return "<center><li> Invalid Trial Balance Number.";
    }
    $bal = pg_fetch_array($balRslt);
    $balance = base64_decode($bal['output']);
    $OUTPUT = $balance;
    include "temp.xls.php";
    Stream("TB", $OUTPUT);
}
function show_branches($active_search = FALSE)
{
    db_connect();
    $get_branches = "SELECT * FROM branches_data ORDER BY branch_name";
    $run_branches = db_exec($get_branches) or errDie("Unable to get branch information.");
    if (pg_numrows($run_branches) < 1) {
        $listing = "\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td colspan='7'>No Branches Found.</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t";
    } else {
        $listing = "";
        while ($barr = pg_fetch_array($run_branches)) {
            if ($active_search == FALSE) {
                $status = "Unknown";
            } else {
                if ($connect_test = @fsockopen("{$barr['branch_ip']}", 80, $errno, $errstr, 4)) {
                    #online ...
                    $status = "Online";
                } else {
                    $status = "Offline";
                }
            }
            $get_username = "******";
            $run_username = db_exec($get_username) or errDie("Unable to get user information.");
            if (pg_numrows($run_username) < 1) {
            }
            $listing .= "\n\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t<td>{$barr['branch_name']}</td>\n\t\t\t\t\t\t\t\t<td>" . nl2br($barr['branch_desc']) . "</td>\n\t\t\t\t\t\t\t\t<td>{$barr['branch_username']}</td>\n\t\t\t\t\t\t\t\t<td>{$barr['branch_contact']}</td>\n\t\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t\t<td>{$barr['branch_ip']}</td>\n\t\t\t\t\t\t\t\t<td>{$status}</td>\n\t\t\t\t\t\t\t\t<td><a href='branches-rem.php?bid={$barr['id']}'>Remove</a></td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t";
        }
    }
    $display = "\n\t\t\t\t\t<h3>Current Branches on Cubit</h3>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t<form action='" . SELF . "' method='POST'>\n\t\t\t\t\t\t<input type='hidden' name='key' value='confirm'>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th>Branch Name</th>\n\t\t\t\t\t\t\t<th>Branch Description</th>\n\t\t\t\t\t\t\t<th>Branch Username</th>\n\t\t\t\t\t\t\t<th>Branch Contact</th>\n\t\t\t\t\t\t\t<th>Local Username</th>\n\t\t\t\t\t\t\t<th>Branch IP</th>\n\t\t\t\t\t\t\t<th>Status</th>\n\t\t\t\t\t\t\t<th>Remove</th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t{$listing}\n\t\t\t\t\t\t<tr><td><br></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type='submit' value='Update Status'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</form>\n\t\t\t\t\t</table>\n\t\t\t\t";
    return $display;
}
function printDep()
{
    # Set up table to display in
    $printDep = "\n\t\t<h3>View Employee Departments</h3>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th>Department</th>\n\t\t\t\t<th colspan='2'>Options</th>\n\t\t\t</tr>";
    # connect to database
    db_connect();
    # Query server
    $i = 0;
    $sql = "SELECT * FROM departments ORDER BY department ASC";
    $depRslt = db_exec($sql) or errDie("Unable to retrieve employee departments from database.");
    if (pg_numrows($depRslt) < 1) {
        return "<li>There are no employee departments in Cubit.</li>";
    }
    while ($dep = pg_fetch_array($depRslt)) {
        $printDep .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'>{$dep['department']}</td>\n\t\t\t\t<td><a href='empdepartment-edit.php?id={$dep['id']}'>Edit</a></td>";
        $sql = "SELECT * FROM employees WHERE department='{$dep['id']}'";
        $depRslt = db_exec($sql) or ereDie("Unable to retrieve employee departments from database.");
        if (pg_numrows($depRslt) < 1) {
            $printDep .= "<td><a href='empdepartment-rem.php?id={$dep['id']}'>Remove</a></td></tr>";
        } else {
            $printDep .= "</tr>";
        }
        $i++;
    }
    $printDep .= "\n\t\t</table>\n\t\t<p>\n\t\t<table " . TMPL_tblDflts . " width='15%'>\n\t\t\t<tr><td><br></td></tr>\n\t\t\t<tr>\n\t\t\t\t<th>Quick Links</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><a href='empdepartment-add.php'>Add Employee Department</a></td>\n\t\t\t</tr>\n\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t</table>";
    return $printDep;
}
function rem($clasid)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($clasid, "num", 1, 50, "Invalid Classification id.");
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>-" . $e["msg"] . "<br>";
        }
        return $confirm;
    }
    # Select Stock
    db_connect();
    $sql = "SELECT * FROM stockclass WHERE clasid = '{$clasid}' AND div = '" . USER_DIV . "'";
    $clasRslt = db_exec($sql) or errDie("Unable to access databse.", SELF);
    if (pg_numrows($clasRslt) < 1) {
        return "<li> Invalid Category ID.";
    } else {
        $clas = pg_fetch_array($clasRslt);
    }
    $enter = "<h3>Remove Classification</h3>\r\n\t<form action='" . SELF . "' method=post>\r\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t<input type=hidden name=key value=write>\r\n\t<input type=hidden name=clasid value='{$clas['clasid']}'>\r\n\t<input type=hidden name=classname value='{$clas['classname']}'>\r\n\t<input type=hidden name=classcode value='{$clas['classcode']}'>\r\n\t<tr><th>Field</th><th>Value</th></tr>\r\n\t<tr class='bg-odd'><td>Classification Code</td><td align=center>{$clas['classcode']}</td></tr>\r\n\t<tr class='bg-even'><td>Classification</td><td align=center>{$clas['classname']}</td></tr>\r\n\t<tr><td colspan=2 align=right><input type=submit value='Remove &raquo;'></td></tr>\r\n\t<tr><td><br></td></tr>\r\n\t</table></form>\r\n\t<p>\r\n\t<table border=0 cellpadding='2' cellspacing='1'>\r\n\t<tr><th>Quick Links</th></tr>\r\n\t<tr class='bg-odd'><td><a href='stockclass-view.php'>View Classifications</a></td></tr>\r\n\t<tr class='bg-odd'><td><a href='main.php'>Main Menu</a></td></tr>\r\n\t</table>";
    return $enter;
}
function remove($_POST)
{
    extract($_POST);
    $id += 0;
    db_conn('crm');
    $Sl = "SELECT * FROM tokens WHERE id='{$id}'";
    $Ry = db_exec($Sl) or errDie("Unable to get data from system.");
    if (pg_numrows($Ry) < 1) {
        return "Invalid query.";
    }
    $data = pg_fetch_array($Ry);
    $Sl = "SELECT * FROM token_actions WHERE token='{$id}'";
    $Rs = db_exec($Sl) or errDie("Unable to get data from system.");
    $Sl = "SELECT * FROM archived_actions WHERE token='{$id}'";
    $Ri = db_exec($Sl) or errDie("Unable to get data from system.");
    $Sl = "INSERT INTO closedtokens (tid,userid,username,teamid,cat,catid,openby,opendate,lastdate,csct,csc,name,accnum,\r\n\tcon,tel,cell,fax,email,address,sub,notes,closedate,closeby,closebyid)\r\n\tVALUES ('{$id}','{$data['userid']}','{$data['username']}','{$data['teamid']}','{$data['cat']}','{$data['catid']}','{$data['openby']}',\r\n\t'{$data['opendate']}','{$data['lastdate']}','{$data['csct']}','{$data['csc']}','{$data['name']}','{$data['accnum']}','{$data['con']}',\r\n\t'{$data['tel']}','{$data['cell']}','{$data['fax']}','{$data['email']}','{$data['address']}','{$data['sub']}','{$data['notes']}',\r\n\t'" . date("Y-m-d") . "','" . USER_NAME . "','" . USER_ID . "')";
    $Ry = db_exec($Sl) or errDie("Unable to insert query record.");
    while ($adata = pg_fetch_array($Rs)) {
        $Sl = "INSERT INTO closed_token_actions (token,action,donedate,donetime,doneby,donebyid)\r\n\t\tVALUES ('{$id}','{$adata['action']}','{$adata['donedate']}','{$adata['donetime']}','{$adata['doneby']}','{$adata['donebyid']}')";
        $Ry = db_exec($Sl) or errDie("Unable to insert token action.");
    }
    while ($adata = pg_fetch_array($Ri)) {
        $Sl = "INSERT INTO closed_token_actions (token,action,donedate,donetime,doneby,donebyid)\r\n\t\tVALUES ('{$id}','{$adata['action']}','{$adata['donedate']}','{$adata['donetime']}','{$adata['doneby']}','{$adata['donebyid']}')";
        $Ry = db_exec($Sl) or errDie("Unable to insert token action(archived).");
    }
    $Sl = "DELETE FROM tokens WHERE id='{$id}'";
    $Ry = db_exec($Sl) or errDie("Unable to remove query.");
    $Sl = "DELETE FROM token_actions WHERE token='{$id}'";
    $Ry = db_exec($Sl) or errDie("Unable to remove query actions.");
    $Sl = "DELETE FROM archived_actions WHERE token='{$id}'";
    $Ry = db_exec($Sl) or errDie("Unable to remove archived query actions.");
    header("Location: tokens-manage.php");
    exit;
}
function edit($id)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($id, "num", 1, 50, "Invalid interest bracket id.");
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>-" . $e["msg"] . "<br>";
        }
        return $confirm;
    }
    db_connect();
    # get info
    $sql = "SELECT * FROM intbracs WHERE id = '{$id}'";
    $intRslt = db_exec($sql) or errDie("Unable to select interest bracket from database.", SELF);
    if (pg_numrows($intRslt) > 0) {
        # get result
        $int = pg_fetch_array($intRslt);
    } else {
        return "Invalid interest bracket ID.";
    }
    $enter = "<h3>Edit Interest bracket</h3>\r\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t<form action='" . SELF . "' method=post>\r\n\t<input type=hidden name=key value=confirm>\r\n\t<input type=hidden name=id value='{$id}'>\r\n\t<tr><th>Field</th><th>Value</th></tr>\r\n\t<tr class='bg-odd'><td>Minimum</td><td align=center><table><tr><td>" . CUR . "</td><td><input type=text size=10 name=min value='{$int['min']}' class=right></td></tr></table></td></tr>\r\n\t<tr class='bg-even'><td>Maximum</td><td align=center><table><tr><td>" . CUR . "</td><td><input type=text size=10 name=max value='{$int['max']}' class=right></td></tr></table></td></tr>\r\n\t<tr class='bg-odd'><td>Percentage</td><td align=center><table><tr><td><input type=text size=10 name=percentage value='{$int['percentage']}' class=right></td><td>%</td></tr></table></td></tr>\r\n\t<tr><td><br></td></tr>\r\n\t<tr><td colspan=2 align=right><input type=submit value='Confirm &raquo;'></td></tr>\r\n\t</form>\r\n\t</table>\r\n\t<p>\r\n\t<table border=0 cellpadding='2' cellspacing='1'>\r\n\t\t<tr><th>Quick Links</th></tr>\r\n\t\t<tr bgcolor='#88BBFF'><td><a href='main.php'>Main Menu</a></td></tr>\r\n\t</table>";
    return $enter;
}
function save_new_setting()
{
    extract($_REQUEST);
    if (!isset($setting) or strlen($setting) < 1) {
        $setting = "no";
    }
    db_connect();
    $check_sql = "SELECT value FROM settings WHERE constant = 'USE_NON_PURCHASES_ACCOUNTS' LIMIT 1";
    $run_check = db_exec($check_sql) or errDie("Unable to get setting information.");
    if (pg_numrows($run_check) < 1) {
        #nothing found ... insert
        $write_sql = "\n\t\t\tINSERT INTO settings (\n\t\t\t\tconstant, label, value, type, datatype, minlen, maxlen, div, readonly\n\t\t\t) VALUES (\n\t\t\t\t'USE_NON_PURCHASES_ACCOUNTS', 'Use Only Specified Accounts for non stock purchases', '{$setting}', 'general', 'string', '2', '3', '0', 'f'\n\t\t\t)";
        $run_write = db_exec($write_sql) or errDie("Unable to record pre stock take display limit setting.");
    } else {
        #found setting ... update
        $upd_sql = "UPDATE settings SET value = '{$setting}' WHERE constant = 'USE_NON_PURCHASES_ACCOUNTS'";
        $run_upd = db_exec($upd_sql) or errDie("Unable to update pre stock take display setting.");
    }
    if (isset($save)) {
        return get_current_setting();
    }
    #check duplicate
    $check_sql = "SELECT id FROM non_purchases_account_list WHERE accid = '{$newaccount}'";
    $run_check = db_exec($check_sql) or errDie("Unable to check for new account.");
    if (pg_numrows($run_check) < 1) {
        $ins_sql = "\n\t\t\tINSERT INTO non_purchases_account_list (\n\t\t\t\taccid, accname\n\t\t\t) VALUES (\n\t\t\t\t'{$newaccount}', (SELECT accname FROM core.accounts where accid = '{$newaccount}' LIMIT 1)\n\t\t\t)";
        $run_ins = db_exec($ins_sql) or errDie("Unable to record new account information.");
    }
    return get_current_setting();
}
function rem($calloutpid)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($calloutpid, "num", 1, 50, "Invalid Call Out Person id.");
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>-" . $e["msg"] . "<br>";
        }
        return $confirm;
    }
    # Select Stock
    db_conn("exten");
    $sql = "SELECT * FROM calloutpeople WHERE calloutpid = '{$calloutpid}' AND div = '" . USER_DIV . "'";
    $salespRslt = db_exec($sql) or errDie("Unable to access databse.", SELF);
    if (pg_numrows($salespRslt) < 1) {
        return "<li> Invalid Call Out Person ID.";
    } else {
        $calloutp = pg_fetch_array($salespRslt);
    }
    $enter = "\r\n\t\t\t<h3>Confirm Remove Call Out Person</h3>\r\n\t\t\t<form action='" . SELF . "' method='post'>\r\n\t\t\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t\t\t\t<input type='hidden' name='key' value='write'>\r\n\t\t\t\t<input type='hidden' name='calloutpid' value='{$calloutp['calloutpid']}'>\r\n\t\t\t\t<input type='hidden' name='calloutp' value='{$calloutp['calloutp']}'>\r\n\t\t\t\t<input type='hidden' name='telno' value='{$calloutp['telno']}'>\r\n\t\t\t\t<tr><th>Field</th><th>Value</th></tr>\r\n\t\t\t\t<tr class='bg-odd'><td>Call Out Person</td><td>{$calloutp['calloutp']}</td></tr>\r\n\t\t\t\t<tr class='bg-even'><td>Contact Number</td><td>{$calloutp['telno']}</td></tr>\r\n\t\t\t\t<tr><td><br></td></tr>\r\n\t\t\t\t<tr><td colspan=2 align=right><input type=submit value='Remove &raquo;'></td></tr>\r\n\t\t\t</table></form>\r\n\t\t\t<p>\r\n\t\t\t<table border=0 cellpadding='2' cellspacing='1'>\r\n\t\t\t\t<tr><th>Quick Links</th></tr>\r\n\t\t\t\t<tr class='bg-odd'><td><a href='calloutp-view.php'>View Call Out Person</a></td></tr>\r\n\t\t\t\t<tr class='bg-odd'><td><a href='../main.php'>Main Menu</a></td></tr>\r\n\t\t\t</table>";
    return $enter;
}
function view()
{
    global $_POST;
    extract($_POST);
    if (!isset($number)) {
        $number = 1;
        $bankid = 0;
    }
    #banks dropdown
    db_connect();
    $bankaccs = "<select name='bankid'>";
    $sql = "SELECT * FROM bankacct WHERE btype != 'int' AND div = '" . USER_DIV . "' ORDER BY bankname,branchname";
    $banks = db_exec($sql);
    if (pg_numrows($banks) < 1) {
        return "<li class='err'> There are no Bank accounts in Cubit.</li>";
    }
    for ($i = 0; $acc = pg_fetch_array($banks); $i++) {
        if ($acc['bankid'] == $bankid) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $bankaccs .= "<option value='{$acc['bankid']}' {$sel}>[ {$acc['bankname']} ] {$acc['accname']} &nbsp({$acc['acctype']})</option>";
    }
    $bankaccs .= "</select>";
    // Layout
    $view = "\n\t\t<h3>Select Bank account</h3>\n\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t\t<input type='hidden' name='key' value='enter'>\n\t\t<table " . TMPL_tblDflts . ">\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>Bank Account</td>\n\t\t\t\t<td>{$bankaccs}</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td></td>\n\t\t\t\t<td align='right'><input type='submit' value='Enter Data &raquo'></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t</form>\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 $view;
}
function view_data($_GET)
{
    foreach ($_GET as $key => $value) {
        ${$key} = $value;
    }
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($id, "num", 1, 100, "Invalid num.");
    # display errors, if any
    if ($v->isError()) {
        $confirmCust = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirmCust .= "<li class=err>" . $e["msg"];
        }
        $confirmCust .= "<p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirmCust;
    }
    db_conn('cubit');
    $user = USER_NAME;
    $Sql = "SELECT * FROM cf WHERE (id='{$id}' AND div = '" . USER_DIV . "')";
    $Rslt = db_exec($Sql) or errDie("Unable to access database.");
    if (pg_numrows($Rslt) < 1) {
        return "entry not Found";
    }
    $Data = pg_fetch_array($Rslt);
    foreach ($Data as $key => $value) {
        ${$key} = $value;
    }
    $view_data = "<h3>Confirm cash flow budget entry</h3>\n\t<form action='" . SELF . "' method=post>\n\t<input type=hidden name=key value=confirm>\n\t<input type=hidden name=id value='{$id}'>\n\t<table cellpadding=0 cellspacing=0>\n\t<tr valign=top><td>\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<tr><th colspan=2>Asset Details</th></tr>\n\t<tr class='bg-even'><td>Description</td><td>{$description}</td></tr>\n\t<tr class='bg-odd'><td>Date Bought</td><td>{$date}</td></tr>\n\t<tr class='bg-even'><td>Amount</td><td>{$amount}</td></tr>\n\t</table>\n\t</td></tr>\n\t<tr><td valign=bottom><input type=submit value='Remove &raquo;'></td></tr>\n\t</table>\n\t<p>\n\t<table border=0 cellpadding='2' cellspacing='1'>\n\t<tr><th>Quick Links</th></tr>\n\t<tr class='bg-odd'><td><a href='cfe-view.php'>View Assets</a></td></tr>\n\t<script>document.write(getQuicklinkSpecial());</script>\n\t</table>";
    return $view_data;
}
function posttake_display()
{
    extract($_REQUEST);
    $fields = array();
    $fields["page"] = 1;
    extract($fields, EXTR_SKIP);
    $sql = "\n\t\tSELECT stock.stkid, stock.whid, stkcod, stkdes, bar, adjusted, qty \n\t\tFROM cubit.stock_take \n\t\t\tLEFT JOIN cubit.stock ON stock_take.stkid=stock.stkid \n\t\tWHERE page='{$page}' AND (adjusted='0' OR adjusted IS NULL) \n\t\tORDER BY stkcod ASC, whid";
    $stock_rslt = db_exec($sql) or errDie("Unable to retrieve stock.");
    $stock_out = "";
    while ($stock_data = pg_fetch_array($stock_rslt)) {
        db_conn("exten");
        $get_wh = "SELECT whname FROM warehouses WHERE whid = '{$stock_data['whid']}' LIMIT 1";
        $run_wh = db_exec($get_wh) or errDie("Unable to get warehouse information.");
        if (pg_numrows($run_wh) < 1) {
            $whname = "Default";
        } else {
            $whname = trim(pg_fetch_result($run_wh, 0, 0));
        }
        $stock_out .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>{$stock_data['bar']}</td>\n\t\t\t\t<td>{$whname}</td>\n\t\t\t\t<td>{$stock_data['stkcod']}</td>\n\t\t\t\t<td>{$stock_data['stkdes']}</td>\n\t\t\t\t<td align='center'><input type='text' name='qty[{$stock_data['stkid']}]' value='{$stock_data['qty']}' size='3' style='text-align: center' /></td>\n\t\t\t\t<td><input type='submit' name='update[{$stock_data['stkid']}]' value='OK' /></td>\n\t\t\t</tr>";
    }
    if (empty($stock_out)) {
        $stock_out = "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td colspan='5'>No results found.</td>\n\t\t\t</tr>";
    }
    $OUTPUT = "\n\t\t<center>\n\t\t<h3>Stock Take</h3>\n\t\t<form method='POST' action='" . SELF . "'>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th colspan='2'>Page</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><input type='text' name='page' value='{$page}' size='3' style='font-weight: bold; text-align: center' /></td>\n\t\t\t\t<td><input type='submit' value='OK' /></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t</form>\n\t\t<form method='POST' action='" . SELF . "'>\n\t\t\t<input type='hidden' name='key' value='take_update' />\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th>Barcode</th>\n\t\t\t\t<th>Store</th>\n\t\t\t\t<th>Stock Code</th>\n\t\t\t\t<th>Stock Description</th>\n\t\t\t\t<th>Quantity</th>\n\t\t\t\t<th>&nbsp;</th>\n\t\t\t</tr>\n\t\t\t{$stock_out}\n\t\t</table>\n\t\t<input type='submit' name='button[adjustments]' value='Adjustments' />\n\t\t</form>\n\t\t</center>";
    return $OUTPUT;
}
function printGrp()
{
    # Set up table to display in
    $printGrp = "\r\n    <h3>Asset Groups</h3>\r\n    <table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n    <tr><th>Group</th><th>Cost Account</th><th>Accumulated Depreciation Account</th><th>Depreciation Account</th><th colspan=2>Options</th></tr>";
    # connect to database
    db_connect();
    # Query server
    $i = 0;
    $sql = "SELECT * FROM assetgrp WHERE div = '" . USER_DIV . "' ORDER BY grpname ASC";
    $GrpRslt = db_exec($sql) or errDie("Unable to retrieve Asset Groups from database.");
    if (pg_numrows($GrpRslt) < 1) {
        return "\r\n\t\t\t\t<li> There are no Assets Groups in Cubit.</li><br>" . mkQuickLinks(ql("assetgrp-new.php", "Add Asset Group"), ql("assetgrp-view.php", "View Asset Groups"));
    }
    while ($Grp = pg_fetch_array($GrpRslt)) {
        # get ledger account name(cost)
        core_connect();
        $sql = "SELECT accname FROM accounts WHERE accid = '{$Grp['costacc']}' AND div = '" . USER_DIV . "'";
        $accRslt = db_exec($sql);
        $acccost = pg_fetch_array($accRslt);
        # get ledger account name(accum dep)
        $sql = "SELECT accname FROM accounts WHERE accid = '{$Grp['accdacc']}' AND div = '" . USER_DIV . "'";
        $accRslt = db_exec($sql);
        $acdacc = pg_fetch_array($accRslt);
        # get ledger account name(dep)
        $sql = "SELECT accname FROM accounts WHERE accid = '{$Grp['depacc']}' AND div = '" . USER_DIV . "'";
        $accRslt = db_exec($sql);
        $accdep = pg_fetch_array($accRslt);
        # alternate bgcolor
        $printGrp .= "<tr class='" . bg_class() . "'><td>{$Grp['grpname']}</td><td>{$acccost['accname']}</td><td>{$acdacc['accname']}</td><td>{$accdep['accname']}</td><td><a href='assetgrp-edit.php?grpid={$Grp['grpid']}'>Edit</a></td>";
        $printGrp .= "<td><a href='assetgrp-rem.php?grpid={$Grp['grpid']}'>Remove</a></td></tr>";
        $i++;
    }
    $printGrp .= "</table>\r\n    <p>\r\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=15%>\r\n        <tr><td><br></td></tr>\r\n        <tr><th>Quick Links</th></tr>\r\n\t\t<tr class='bg-odd'><td><a href='assetgrp-new.php'>Add Asset Group</a></td></tr>\r\n\t\t<script>document.write(getQuicklinkSpecial());</script>\r\n\t</table>";
    return $printGrp;
}
function printInv()
{
    # Set up table to display in
    $printQuo = "\n\t\t\t\t\t<h3>View previous POS Quotes</h3>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t<form action='" . SELF . "' method='POST'>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th>Department</th>\n\t\t\t\t\t\t\t<th>Sales Person</th>\n\t\t\t\t\t\t\t<th>Quote No.</th>\n\t\t\t\t\t\t\t<th>Quote Date</th>\n\t\t\t\t\t\t\t<th>Customer Name</th>\n\t\t\t\t\t\t\t<th>Order No</th>\n\t\t\t\t\t\t\t<th>Grand Total</th>\n\t\t\t\t\t\t\t<th colspan='6'>Options</th>\n\t\t\t\t\t\t\t<th>Email</th>\n\t\t\t\t\t\t</tr>";
    # connect to database
    db_connect();
    # Query server
    $i = 0;
    $sql = "SELECT * FROM pos_quotes WHERE accepted != 'c' AND done = 'y' AND div = '" . USER_DIV . "' ORDER BY quoid DESC";
    $quoRslt = db_exec($sql) or errDie("Unable to retrieve quotes from database.");
    if (pg_numrows($quoRslt) < 1) {
        $printQuo = "<li>No previous quotes.</li>";
    } else {
        while ($quo = pg_fetch_array($quoRslt)) {
            # format date
            $quo['odate'] = explode("-", $quo['odate']);
            $quo['odate'] = $quo['odate'][2] . "-" . $quo['odate'][1] . "-" . $quo['odate'][0];
            $printQuo .= "\n\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t<td>{$quo['deptname']}</td>\n\t\t\t\t\t\t\t\t\t<td>{$quo['salespn']}</td>\n\t\t\t\t\t\t\t\t\t<td>{$quo['quoid']}</td>\n\t\t\t\t\t\t\t\t\t<td align='center'>{$quo['odate']}</td>\n\t\t\t\t\t\t\t\t\t<td>{$quo['cusname']} {$quo['surname']}</td>\n\t\t\t\t\t\t\t\t\t<td align=right>{$quo['ordno']}</td>\n\t\t\t\t\t\t\t\t\t<td>" . CUR . " {$quo['total']}</td>\n\t\t\t\t\t\t\t\t\t<td><a href='pos-quote-details.php?quoid={$quo['quoid']}'>Details</a></td>";
            if ($quo['accepted'] == 'n') {
                $printQuo .= "\n\t\t\t\t\t\t\t\t\t<td><a href='pos-quote-new.php?quoid={$quo['quoid']}&cont=true&done='>Edit</a></td>\n\t\t\t\t\t\t\t\t\t<td><a href='pos-quote-cancel.php?quoid={$quo['quoid']}'>Cancel</a></td>\n\t\t\t\t\t\t\t\t\t<td><a href='pos-quote-accept.php?quoid={$quo['quoid']}'>Accept</a></td>\n\t\t\t\t\t\t\t\t\t<td><a href='pos-quote-print.php?quoid={$quo['quoid']}' target='_blank'>Print</a></td>\n\t\t\t\t\t\t\t\t\t<td><a href='pdf/pos-quote-pdf-print.php?quoid={$quo['quoid']}' target='_blank'>Print in PDF</a></td>\n\t\t\t\t\t\t\t\t\t<td><input type='checkbox' name='evs[]' value='{$quo['quoid']}'></td>\n\t\t\t\t\t\t\t\t</tr>";
            } else {
                $printQuo .= "\n\t\t\t\t\t\t\t\t\t<td colspan='3'>Accepted</td>\n\t\t\t\t\t\t\t\t\t<td><a href='pos-quote-print.php?quoid={$quo['quoid']}' target='_blank'>Print</a></td>\n\t\t\t\t\t\t\t\t\t<td><a href='pdf/pos-quote-pdf-print.php?quoid={$quo['quoid']}' target='_blank'>Print in PDF</a></td>\n\t\t\t\t\t\t\t\t\t<td><input type='checkbox' name='evs[]' value='{$quo['quoid']}'></td>\n\t\t\t\t\t\t\t\t</tr>";
            }
            $i++;
        }
        $printQuo .= "\n\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t<td colspan='14' align='right'><input type='submit' name='key' value='Send Emails'></td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t";
    }
    // Layout
    $printQuo .= "\n\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t\t\t<tr><td><br></td></tr>\n\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t<th>Quick Links</th>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t<tr class='datacell'>\n\t\t\t\t\t\t\t\t\t<td align='center'><a href='pos-quote-new.php'>New POS Quote</td>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t<tr class='datacell'>\n\t\t\t\t\t\t\t\t\t<td align='center'><a href='main.php'>Main Menu</td>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t</table>";
    return $printQuo;
}
function confirm($_GET)
{
    extract($_GET);
    $id += 0;
    db_conn('crm');
    $Sl = "SELECT * FROM teams WHERE id='{$id}'";
    $Ry = db_exec($Sl) or errDie("Unable to get team info.");
    if (pg_numrows($Ry) < 1) {
        return "Invalid team.";
    }
    $teamdata = pg_fetch_array($Ry);
    $Sl = "SELECT * FROM crms WHERE div='" . USER_DIV . "'";
    $Ry = db_exec($Sl) or errDie("Unable to get data.");
    while ($cdata = pg_fetch_array($Ry)) {
        $teams = explode("|", $cdata['teams']);
        if (in_array($id, $teams)) {
            return "You Cannot remove this team, {$cdata['name']} is still allocated to it.";
        }
    }
    $Sl = "SELECT * FROM crms WHERE div='" . USER_DIV . "' AND teamid='{$id}'";
    $Ry = db_exec($Sl) or errDie("Unable to get data.");
    if (pg_num_rows($Ry) > 0) {
        $cdata = pg_fetch_array($Ry);
        return "You Cannot remove this team, {$cdata['name']} still has it set as its default.";
    }
    $out = "\r\n\t\t\t\t<h3>Remove Cubit Team</h3>\r\n\t\t\t\t<form action='" . SELF . "' method='POST'>\r\n\t\t\t\t\t<input type='hidden' name='key' value='remove'>\r\n\t\t\t\t\t<input type='hidden' name='id' value='{$id}'>\r\n\t\t\t\t<table " . TMPL_tblDflts . ">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th colspan='2'>Team Details</th>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t\t\t<td>Team Name</td>\r\n\t\t\t\t\t\t<td>{$teamdata['name']}</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t\t\t<td>Description</td>\r\n\t\t\t\t\t\t<td>{$teamdata['des']}</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td colspan='2' align='right'><input type='submit' value='Remove &raquo;'></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</form>\r\n\t\t\t\t</table>";
    return $out;
}
function confirm($catid)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($catid, "num", 1, 50, "Invalid stock category id.");
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>-" . $e["msg"] . "<br>";
        }
        return $confirm;
    }
    # Select Stock
    db_connect();
    $sql = "SELECT * FROM stockcat WHERE catid = '{$catid}' AND div = '" . USER_DIV . "'";
    $catRslt = db_exec($sql) or errDie("Unable to access databse.", SELF);
    if (pg_numrows($catRslt) < 1) {
        return "<li> Invalid Stock ID.";
    } else {
        $cat = pg_fetch_array($catRslt);
    }
    # get stock vars
    foreach ($cat as $key => $value) {
        ${$key} = $value;
    }
    // Layout
    $confirm = "<h3>Stock Category</h3>\n\t\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t\t\t<tr><th width=40%>Field</th><th width=60%>Value</th></tr>\n\t\t\t<tr class='bg-odd'><td>Category Code</td><td>{$catcod}</td></tr>\n\t\t\t<tr class='bg-even'><td>Category Name</td></td><td>{$cat}</td></tr>\n\t\t\t<tr class='bg-odd'><td valign=top>Description</td><td><pre>{$descript}</pre></td></tr>\n\t\t</table>\n\t\t<p>\n\t\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=100>\n\t\t\t<tr><th>Quick Links</th></tr>\n\t\t\t<tr class='bg-odd'><td><a href='stockcat-edit.php?catid={$catid}'>Edit</a></td></tr>\n\t\t\t<tr class='bg-even'><td><a href='stockcat-view.php'>View Stock Category</a></td></tr>\n\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t</table>";
    return $confirm;
}
function view($_GET)
{
    foreach ($_GET as $key => $value) {
        ${$key} = $value;
    }
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($docid, "num", 1, 100, "Invalid num.");
    # display errors, if any
    if ($v->isError()) {
        $confirmCust = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirmCust .= "<li class=err>" . $e["msg"];
        }
        $confirmCust .= "<p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirmCust;
    }
    db_conn('cubit');
    $user = USER_NAME;
    # write to db
    $Sql = "SELECT * FROM documents WHERE docid='{$docid}'";
    $Rslt = db_exec($Sql) or errDie("Unable to access database.");
    if (pg_numrows($Rslt) < 1) {
        return "Document not Found";
    }
    $Data = pg_fetch_array($Rslt);
    $view = "<h3>Document details</h3>\r\n<br>\r\n<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n<form action='" . SELF . "' method=post>\r\n<input type=hidden name=key value=confirm>\r\n<input type=hidden name=id value={$docid}>\r\n<tr><th colspan=2>Document details</th></tr>\r\n\t<tr class='bg-odd'><td>Typeid</td><td>{$Data['typeid']}</td></tr>\r\n\t<tr class='bg-odd'><td>TypeName</td><td>{$Data['typename']}</td></tr>\r\n\t<tr class='bg-odd'><td>xin/td><td>{$Data['xin']}</td></tr>\r\n\t<tr class='bg-odd'><td>docref</td><td>{$Data['docref']}</td></tr>\r\n\t<tr class='bg-odd'><td>Date</td><td>{$Data['docdate']}</td></tr>\r\n\t<tr class='bg-even'><td>Docname</td><td align=center>{$Data['docname']}</td></tr>\r\n\t<tr class='bg-odd'><td>File</td><td>{$Data['filename']}</td></tr>\r\n\t<tr class='bg-odd'><td>MimeType</td><td>{$Data['mimetype']}</td></tr>\r\n\t<tr class='bg-even'><td>Description</td><td>{$Data['descrip']}</td></tr>\r\n\t<tr class='bg-odd'><td>Doc</td><td>{$Data['docu']}</td></tr>\r\n\t<tr class='bg-odd'><td>Div</td><td>{$Data['div']}</td></tr> \r\n\t\r\n\t<tr><td colspan=2 align=right><input type=submit value='Remove &raquo;'></td></tr>\r\n</table>\r\n<p>\r\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t<tr><th>Quick Links</th></tr>\r\n\t<tr class='bg-odd'><td><a href='tlist-docview.php'>List Removed Documents</a></td></tr>\r\n        <tr class='bg-odd'><td><a href='tdocadd.php'>Add New Document</a></td></tr>\r\n\t<tr class='bg-odd'><td><a href='../main.php'>Main Menu</a></td></tr>\r\n\t</table>\r\n  ";
    db_conn('cubit');
    # write to db
    $Sql = "INSERT INTO document(typeid,typename,xin,docref,docdate,docname,filename,mimetype,descrip,docu,div) VALUES ('{$Data['typeid']}','{$Data['typename']}','{$Data['xin']}','{$Data['docref']}','{$Data['docdate']}','{$Data['docname']}','{$Data['filename']}','{$Data['mimetype']}','{$Data['descrip']}','{$Data['docu']}','{$Data['div']}')";
    $Rslt = db_exec($Sql) or errDie("Unable to access database.");
    return view;
}
function select($_POST)
{
    # get vars
    foreach ($_POST as $key => $value) {
        ${$key} = $value;
    }
    # Set uppercase
    $ALPHA = strtoupper($alpha);
    # Connect to database
    db_connect();
    # Query server for customer info
    $sql = "SELECT * FROM customers WHERE cusname LIKE '{$alpha}%' OR cusname LIKE '{$ALPHA}%' ORDER BY cusname";
    $prnCustRslt = db_exec($sql) or errDie("Unable to view customers");
    $numrows = pg_numrows($prnCustRslt);
    if ($numrows < 1) {
        return "<li class=err>No customer names starting with <b>{$ALPHA}</b> in database.";
    }
    $select = "<h4>Select a customer</h4>\r\n\t\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width='50%'>\r\n\t\t<tr><th>Customer no.</th><th>Customer name</th></tr>";
    // display customers to choose from
    for ($i = 0; $i < $numrows; $i++) {
        $myCust = pg_fetch_array($prnCustRslt);
        $select .= "<tr class='" . bg_class() . "'><td align=center>{$myCust['cusnum']}</td><td align=center><a href='quote-new.php?cusnum={$myCust['cusnum']}'>{$myCust['cusname']}</a></td></tr>";
    }
    $select .= "</table>\r\n\t\t<p>\r\n\t\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=100>\r\n\t\t\t<tr><th>Quick Links</th></tr>\r\n\t\t\t<tr bgcolor='#88BBFF'><td><a href='customers-new.php'>New Customer</a></td></tr>\r\n\t\t\t<script>document.write(getQuicklinkSpecial());</script>\r\n\t\t\t<tr bgcolor='#88BBFF'><td><a href='main.php'>Main Menu</a></td></tr>\r\n\t\t</table>";
    return $select;
}
function OUTPUT($_POST)
{
    extract($_POST);
    $typeid = remval($typeid);
    # Set up table to display in
    $OUTPUT .= "<td valign=top width='33%'>\r\n<table border=0 width='90%'>\r\n<tr><td align=center nowrap><h3>Document Data</h3></td></tr>\r\n<tr><th>Type</th><th>Ref</th><th>Document</th><th>Date</th><th>Description</th><th>Filename</th></tr>";
    if ($typeid != '0') {
        $whe = "AND typeid='{$typeid}' ";
    } else {
        $whe = "";
    }
    # Connect to database
    //db_conn (YR_DB);
    db_conn("yr2");
    # Query server
    $i = 0;
    $sql = "SELECT * FROM documents WHERE div = '" . USER_DIV . "' {$whe} ORDER BY docname ASC";
    $docRslt = db_exec($sql) or errDie("Unable to retrieve Documents from database.");
    if (pg_numrows($docRslt) < 1) {
        return "<li>There are no Documents in Cubit.</li>\r\n\t\t\t <p>\r\n\t\t\t <table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=15%>\r\n\t\t<tr><td><br></td></tr>\r\n\t\t<tr><th>Quick Links</th></tr>\r\n\t\t<tr class='bg-odd'><td><a href='docadd.php'>Add Document</a></td></tr>\r\n\t\t<tr class='bg-odd'><td><a href='docview.php'>View Documents</a></td></tr>\r\n\t\t<tr class='bg-odd'><td><a href='../main.php'>Main Menu</a></td></tr>\r\n\t\t<tr class='bg-odd'><td><a href='docman-index.php'>Back</a></td></tr>\r\n\t\t</table>";
    }
    while ($doc = pg_fetch_array($docRslt)) {
        $OUTPUT .= "<tr class='" . bg_class() . "'><td>{$doc['typename']}</td><td>{$doc['docref']}</td><td>{$doc['docname']}</td><td>{$doc['docdate']}</td><td>{$doc['descrip']}</td><td>{$doc['filename']}</td><td><a href='docedit.php?docid={$doc['docid']}'>Edit</a></td>";
        $OUTPUT .= "<td><a href='docdload.php?docid={$doc['docid']}'>Download</a></td><td><a href='docrem.php?docid={$doc['docid']}'>Remove</a></td></tr>";
        $i++;
    }
    $OUTPUT .= "</table></td>";
    return $OUTPUT;
}
function edit($id)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($id, "num", 1, 50, "Invalid id.");
    # display errors, if any
    if ($v->isError()) {
        $confirm = "";
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $confirm .= "<li class=err>-" . $e["msg"] . "<br>";
        }
        return $confirm;
    }
    # Select Stock
    db_conn("exten");
    $sql = "SELECT * FROM od WHERE id = '{$id}' AND div = '" . USER_DIV . "'";
    $catRslt = db_exec($sql) or errDie("Unable to access databse.", SELF);
    if (pg_numrows($catRslt) < 1) {
        return "<li> Invalid ID.";
    } else {
        $cat = pg_fetch_array($catRslt);
    }
    $enter = "<h3>Edit Overdue Term</h3>\r\n\t<form action='" . SELF . "' method=post>\r\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t<input type=hidden name=key value=confirm>\r\n\t<input type=hidden name=id value='{$id}'>\r\n\t<tr><th>Field</th><th>Value</th></tr>\r\n\t<tr class='bg-odd'><td>Overdue Term</td><td align=center><input type=text size=20 name=days value='{$cat['days']}'></td></tr>\r\n \t<tr><td colspan=2 align=right><input type=submit value='Confirm &raquo;'></td></tr>\r\n\t</table></form>\r\n\t<p>\r\n\t<table border=0 cellpadding='2' cellspacing='1'>\r\n\t<tr><th>Quick Links</th></tr>\r\n\t<tr class='bg-odd'><td><a href='od-view.php'>View Overdue Terms</a></td></tr>\r\n\t<tr class='bg-odd'><td><a href='../main.php'>Main Menu</a></td></tr>\r\n\t</table>";
    return $enter;
}