Ejemplo n.º 1
0
function slctOpt($errors = "")
{
    global $_POST;
    extract($_POST);
    $fields = array();
    $fields["budname"] = "Financial Budget";
    foreach ($fields as $var_name => $value) {
        if (!isset(${$var_name})) {
            ${$var_name} = $value;
        }
    }
    global $BUDFOR, $TYPES, $PERIODS;
    global $MONPRD, $PRDMON;
    $typesel = extlib_mksel("budtype", $TYPES);
    $fromprdsel = extlib_cpsel("fromprd", $PERIODS, $PRDMON[1]);
    $toprdsel = extlib_cpsel("toprd", $PERIODS, $PRDMON[12]);
    if ($budname == "Financial Budget") {
        $bud_fin = "checked";
        $bud_spec = "";
    } else {
        $bud_fin = "";
        $bud_spec = "checked";
    }
    // Options Layout
    $Opts = "<center>\n\t<h3> New Monthly Budget</h3>\n\t<form action='" . SELF . "' method=post name=form>\n\t<input type=hidden name=key value=details>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' align=center>\n\t<tr>\n\t\t<td>{$errors}</td>\n\t</tr>\n\t<tr>\n\t\t<th colspan=3>Details</th>\n\t</tr>\n\t<tr class='" . bg_class() . "'>\n\t\t<td>Budget</td>\n\t\t<td>\n\t\t\t<input type='radio' name='budname' value='Financial Budget' {$bud_fin}>Financial Budget<b> | </b>\n\t\t\t<input type='radio' name='budname' value='Special Budget' {$bud_spec}>Special Budget\n\t\t</td>\n\t</tr>\n\t<tr>\n\t\t<td colspan='3'><hr /></td>\n\t</tr>\n\t<tr>\n\t\t<th colspan=3>Create Budget</th>\n\t</tr>\n\t<tr class='" . bg_class() . "'>\n\t\t<td>Budget For</td>\n\t\t<td>\n\t\t\t<input type=radio name=budfor value=cost>Cost Centers &nbsp;&nbsp;\n\t\t\t<input type=radio name=budfor value=acc checked=yes>Accounts\n\t\t</td>\n\t</tr>\n\t<tr class='" . bg_class() . "'>\n\t\t<td>Budget Type</td>\n\t\t<td>{$typesel}</td>\n\t</tr>\n\t<tr class='" . bg_class() . "'>\n\t\t<td>Budget Period</td>\n\t\t<td>{$fromprdsel} to {$toprdsel}</td>\n\t</tr>";
    if (PYR_DB) {
        $Opts .= "<tr class='" . bg_class() . "'>\n\t\t\t<td>Use Previous Year Figures</td>\n\t\t\t<td><input type='checkbox' name='import' /></td>\n\t\t</tr>\n\t\t" . TBL_BR . "\n\t\t<tr>\n\t\t\t<th colspan='3'>'Use Previous Year Figures' Options</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td colspan='3' class='err'>This option is only used to create a budget for accounts,\n\t\t\t\tnot Cost Centers.</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Increase Percentage</td>\n\t\t\t<td>\n\t\t\t\t<input type='text' name='incperc' size='3' value='0' /> %\n\t\t\t\t<span class='err'>Use negative value for decrease.</span>\n\t\t\t</td>\n\t\t</tr>";
    }
    $Opts .= "\n\t" . TBL_BR . "\n\t<tr>\n\t\t<td align=right><input type=button value='&laquo Back' onClick='javascript:history.back()'></td>\n\t\t<td align=right><input type=submit value='Continue &raquo'></td>\n\t</tr>\n\t</table>\n\t</form>\n\t<p>\n\t<table border=0 cellpadding='2' cellspacing='1' width=15%>\n\t\t<tr><th>Quick Links</th></tr>\n\t\t<tr class='bg-odd'><td align=center><a href='budget-view.php'>View Budgets</td></tr>\n\t\t<tr class='bg-odd'><td align=center><a href='../main.php'>Main Menu</td></tr>\n\t</table>";
    return $Opts;
}
function enterAllow($id)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($id, "num", 1, 20, "Invalid allowance 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;
    }
    # get deduction info
    db_connect();
    $sql = "SELECT * FROM allowances WHERE id='{$id}' AND div = '" . USER_DIV . "'";
    $allowRslt = db_exec($sql) or errDie("Unable to select allowance info from database.");
    if (pg_numrows($allowRslt) < 1) {
        return "Invalid allowance ID.";
    }
    $myAllow = pg_fetch_array($allowRslt);
    $arrtype = array("Amount" => "Amount", "Percentage" => "Percentage");
    $seltype = extlib_cpsel("type", $arrtype, $myAllow["type"]);
    # get ledger account name
    core_connect();
    $sql = "SELECT accname FROM accounts WHERE accid = '{$myAllow['accid']}' AND div = '" . USER_DIV . "'";
    $accRslt = db_exec($sql);
    $acc = pg_fetch_array($accRslt);
    $enterAllow = "<h3>Edit allowance</h3>\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\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<tr><th>Field</th><th>Value</th></tr>\n\t<tr class='bg-odd'><td>Name of allowance</td><td align=center><input type=text size=20 name=allowance value='{$myAllow['allowance']}'></td></tr>\n\t<tr class='bg-even'><td>Account</td><td align=center>{$acc['accname']}</td></tr>\n\t<tr class='bg-odd'><td>Taxable</td><td align=center><select name=taxable><option value='yes'>Yes</option><option value='no'>No</option></select></td></tr>\n\t<!--<tr class='bg-even'><td>Allowance Type</td><td>{$seltype}</td></tr>//-->\n\t<input type=hidden name=type value='{$myAllow['type']}'>\n\t<tr><td colspan=2 align=right><input type=submit value='Confirm &raquo;'></td></tr>\n\t</form>\n\t</table>" . mkQuickLinks(ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $enterAllow;
}
Ejemplo n.º 3
0
function enterDeduct()
{
    # connect to db
    db_connect();
    # get last inserted id for new ref no
    // a little hack to make stoopid postgres not return a 1 as last id, when there is no last id
    if (pg_numrows(db_exec("SELECT 1 FROM salded")) < 1) {
        $lastid = 1;
    } else {
        $lastid = pglib_lastid("salded", "id") + 1;
    }
    $refno = "saldeduct" . sprintf("%02d", $lastid);
    $Tp = array("No" => "No", "Yes" => "Yes");
    $taxables = extlib_cpsel("taxable", $Tp, "No");
    $arrtype = array("Amount" => "Amount", "Percentage" => "Percentage");
    $seltype = extlib_cpsel("type", $arrtype, "Percentage");
    $check1 = "";
    $check2 = "";
    if (isset($type) and $type == "Percentage") {
        $check2 = "checked='yes'";
    } else {
        $check1 = "checked='yes'";
    }
    $enterDeduct = "\n\t\t<script>\n\t\t\tfunction inHouse() {\n\t\t\t\tfrm = getObjectById('dedfrm');\n\t\t\t\tfrm.creditor.value='In House';\n\t\t\t\tfrm.details.value='In House';\n\t\t\t}\n\t\t</script>\n\t\t<h3>New salary deduction</h3>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t<form id='dedfrm' action='" . SELF . "' method='POST'>\n\t\t\t<input type='hidden' name='key' value='confirm'>\n\t\t\t<input type='hidden' name='refno' value='{$refno}'>\n\t\t\t<input type='hidden' name='catid' value='B10'>\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>Name of deduction</td>\n\t\t\t\t<td align='center'><input type='text' size='20' name='deduction'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Creditor name</td>\n\t\t\t\t<td align='center'><input type='text' size='20' name='creditor'></td>\n\t\t\t\t<td><input type='button' value='In House' onClick='inHouse();'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Reference no.</td>\n\t\t\t\t<td align='center'>{$refno}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Creditor Details/In House</td>\n\t\t\t\t<td align='center'><input type='text' size='20' name='details'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Before PAYE: Tax Deductable</td>\n\t\t\t\t<td align='center'>{$taxables}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Deduction Type</td>\n\t\t\t\t<td>\n\t\t\t\t\t<input type='radio' name='type' value='Amount' {$check1}> Amount\n\t\t\t\t\t<input type='radio' name='type' value='Percentage' {$check2}> Percent\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td colspan='2' align='right'><input type='submit' value='Confirm &raquo;'></td>\n\t\t\t</tr>\n\t\t</form>\n\t\t</table>" . mkQuickLinks(ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $enterDeduct;
}
function enter($err)
{
    global $_GET;
    extract($_GET);
    $fields["privilege_owner"] = "";
    $fields["privilege"] = "";
    foreach ($fields as $key => $value) {
        if (!isset(${$key})) {
            ${$key} = $value;
        }
    }
    db_conn("cubit");
    $sql = "SELECT username FROM users ORDER BY username";
    $rslt = db_exec($sql) or errDie("Error reading user list.");
    $users = array();
    $users["0"] = "SELECT USER";
    while ($row = pg_fetch_array($rslt)) {
        $users[$row["username"]] = $row["username"];
    }
    $select_user = extlib_cpsel("privilege_owner", $users, $privilege_owner);
    $select_privilege = "\r\n\t\t<select name=privilege>\r\n\t\t\t<option value='R' " . ($privilege == "R" ? "selected" : "") . ">Read</option>\r\n\t\t\t<option value='W' " . ($privilege == "W" ? "selected" : "") . ">Write</option>\r\n\t\t</select>";
    $OUTPUT = "\r\n\t<h3>Diary Privileges</h3>\r\n\t{$err}\r\n\t<form method=post action='" . SELF . "'>\r\n\t<input type=hidden name=key value=write>\r\n\t<table cellpadding='2' cellspacing='0' class='shtable'>\r\n\t<tr>\r\n\t\t<th colspan=3>Details</th>\r\n\t</tr>\r\n\t<tr class='bg-odd'>\r\n\t\t<td>{$select_user}</td>\r\n\t\t<td colspan=2>{$select_privilege}</td>\r\n\t</tr>\r\n\t<tr>\r\n\t\t<th>Username</th>\r\n\t\t<th>Privilege</th>\r\n\t\t<th>Del</th>\r\n\t</tr>";
    db_conn("cubit");
    $sql = "SELECT * FROM diary_privileges WHERE diary_owner='" . USER_NAME . "'";
    $rslt = db_exec($sql) or errDie("Error reading diary privileges.");
    $i = 1;
    while ($row = pg_fetch_array($rslt)) {
        $OUTPUT .= "\r\n\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t<td>{$row['priv_owner']}</td>\r\n\t\t\t<td>{$row['privilege']}</td>\r\n\t\t\t<td><input type=checkbox name='del[{$row['id']}]'></td>\r\n\t\t</tr>";
    }
    $OUTPUT .= "\r\n\t</table>\r\n\t<p></p>\r\n\t<input type=submit value='Update'>\r\n\t</form>";
    return $OUTPUT;
}
function enterFringe()
{
    $arrtype = array("Amount" => "Amount", "Percentage" => "Percentage");
    $seltype = extlib_cpsel("type", $arrtype, "Percentage");
    $OUTPUT = "<h3>Add Fringe Benefit to system</h3>\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<form action='" . SELF . "' method=post>\n\t<input type=hidden name=key value=confirm>\n\t<input type=hidden name=type value='Amount'>\n\t<tr><th colspan=2>Fringe Benefit Details</th></tr>\n\t<tr class='bg-odd'><td>Name</td><td align=center><input type=text size=20 name=fringeben></td></tr>\n\t<tr><td colspan=2 align=right><input type=submit value='Confirm &raquo;'></td></tr>\n\t</form>\n\t</table>" . mkQuickLinks(ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $OUTPUT;
}
function enterAllow()
{
    # connect to db
    core_connect();
    $allcat = "<select name='catid'>";
    $sql = "SELECT * FROM expenditure WHERE div = '" . USER_DIV . "'";
    $catRslt = db_exec($sql);
    if (pg_numrows($catRslt) < 1) {
        return "<li> There are no Expenditure Accounts categories yet in Cubit.</li>";
    } else {
        while ($cat = pg_fetch_array($catRslt)) {
            if (!isset($expval) || $cat["catname"] == "Expenditure") {
                $expval = $cat["catid"];
            }
            $allcat .= "<option value='{$cat['catid']}'>{$cat['catname']}</option>";
        }
    }
    $allcat .= "</select>";
    $Tp = array("No" => "No", "Yes" => "Yes");
    $taxables = extlib_cpsel("taxable", $Tp, "Yes");
    $arrtype = array("Amount" => "Amount", "Percentage" => "Percentage");
    $seltype = extlib_cpsel("type", $arrtype, "Percentage");
    $enterAllow = "\n\t\t\t\t\t<h3>Add allowance to system</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<input type='hidden' name='catid' value='{$expval}' />\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th colspan='2'>Allowance Details</th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Name of allowance</td>\n\t\t\t\t\t\t\t<td align='center'><input type='text' size='20' name='allowance'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<!--\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Account Category</td>\n\t\t\t\t\t\t\t<td align='center'>{$allcat}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t//-->\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Add Before PAYE</td>\n\t\t\t\t\t\t\t<td align='center'>{$taxables}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<input type='hidden' name='type' value='Amount'>\n\t\t\t\t\t\t<!--\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Allowance Type</td>\n\t\t\t\t\t\t\t<td>{$seltype}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t//-->\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan='2' align='right'><input type='submit' value='Confirm &raquo;'></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\t<br>" . mkQuickLinks(ql("allowance-add.php", "Add Allowance"), ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $enterAllow;
}
function view($VARS = array(), $err = "")
{
    extract($VARS);
    if (!isset($accid)) {
        $accid = "";
    }
    $vars = array("bankname", "branchname", "loc", "fcid", "branchcode", "accname", "accnum", "cardnum", "mon", "year", "lastdigits", "cardname", "cardtyp", "details");
    $vard = array("cardtyp" => "Visa", "mon" => date("m"), "year" => date("Y"));
    foreach ($vars as $key => $val) {
        if (!isset(${$val})) {
            ${$val} = isset($vard[$val]) ? $vard[$val] : "";
        }
    }
    if (strlen($lastdigits) < 1) {
        $lastdigits = "000";
    }
    db_connect();
    # Locations drop down
    $locs = array("loc" => "Local", "int" => "International");
    $locsel = extlib_cpsel("loc", $locs, $loc);
    # currency drop down
    $currsel = ext_unddbsel("fcid", "currency", "fcid", "descrip", "There are is no currency found in Cubit, please add currency first.", $fcid);
    $chm = "";
    $chv = "";
    $cho = "";
    if ($cardtyp == 'Visa') {
        $chv = "checked=yes";
    } elseif ($cardtyp == 'Mastercard') {
        $chm = "checked=yes";
    } else {
        $cho = "checked=yes";
    }
    core_connect();
    $sql = "SELECT * FROM accounts WHERE acctype = 'B' AND div = '" . USER_DIV . "' ORDER BY accname";
    $accRslt = db_exec($sql) or errDie("Could not retrieve accounts from Cubit.", SELF);
    if (pg_numrows($accRslt) < 1) {
        return "<li> There are no balance accouts in Cubit.";
    }
    $accs = "<select name='accid'>";
    while ($acc = pg_fetch_array($accRslt)) {
        if (isbank($acc['accid'])) {
            continue;
        }
        if (isb($acc['accid'])) {
            continue;
        }
        if ($accid == $acc['accid']) {
            $accs .= "<option value='{$acc['accid']}' selected>{$acc['accname']}</option>";
        } else {
            $accs .= "<option value='{$acc['accid']}'>{$acc['accname']}</option>";
        }
    }
    $accs .= "</select>";
    //layout
    $view = "\n\t\t<h3>Add New Credit Card Account</h3>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t\t<input type='hidden' name='key' value='confirm'>\n\t\t\t<tr>\n\t\t\t\t<td colspan='2'>{$err}</td>\n\t\t\t</tr>\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>" . REQ . "Bank Name</td>\n\t\t\t\t<td><input type='text' size='20' name='bankname' value='{$bankname}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Type</td>\n\t\t\t\t<td>{$locsel}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Currency</td>\n\t\t\t\t<td>{$currsel}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Branch Name</td>\n\t\t\t\t<td><input type='text' size='20' name='branchname' value='{$branchname}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Branch Code</td>\n\t\t\t\t<td><input type='text' size='20' name='branchcode' value='{$branchcode}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Account Name</td>\n\t\t\t\t<td><input type='text' size='20' name='accname' maxlength='50' value='{$accname}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Account Number</td>\n\t\t\t\t<td><input type='text' size='20' name='accnum' value='{$accnum}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Ledger Account</td>\n\t\t\t\t<td>{$accs}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Card Number</td>\n\t\t\t\t<td><input type='text' size='25' name='cardnum' maxlength='16' value='{$cardnum}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Expiry Date</td>\n\t\t\t\t<td>\n\t\t\t\t\t<input type='text' size='2' name='mon' maxlength='2' value='{$mon}'>-\n\t\t\t\t\t<input type='text' size='4' name='year' maxlength='4' value='{$year}'>MM-YYYY\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Last 3 Digits at back of Card</td>\n\t\t\t\t<td><input type='text' size='3' maxlength='3' name='lastdigits' value='{$lastdigits}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Card Type</td>\n\t\t\t\t<td><input type='radio' name='cardtyp' value='Visa' {$chv}>Visa &nbsp;&nbsp; <input type='radio' name='cardtyp' value='Mastercard' {$chm}> Mastercard &nbsp;&nbsp;&nbsp;<input type='radio' name='cardtyp' value='other' {$cho}>Other: <input type='text' name='cardname' value='{$cardname}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Details</td>\n\t\t\t\t<td><textarea cols='20' rows='3' name='details'>{$details}</textarea></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='button' value='&laquo Cancel' onClick='javascript:history.back();'></td>\n\t\t\t\t<td><input type='submit' value='Confirm &raquo'></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<tr class='" . bg_class() . "'>\n\t\t\t\t<td><a href='../core/acc-new2.php'>Add Ledger Account</a></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><a href='../main.php'>Main Menu</a></td>\n\t\t\t</tr>\n\t\t</table>";
    return $view;
}
function view($VARS = array(), $err = "")
{
    foreach ($VARS as $key => $vals) {
        ${$key} = $vals;
    }
    $vars = array("bankname", "branchname", "loc", "fcid", "branchcode", "accname", "accnum", "cardnum", "mon", "year", "lastdigits", "cardname", "cardtyp", "details");
    $vard = array("cardtyp" => "Visa", "mon" => date("m"), "year" => date("Y"));
    foreach ($vars as $key => $val) {
        if (!isset(${$val})) {
            ${$val} = isset($vard[$val]) ? $vard[$val] : "";
        }
    }
    if (strlen($lastdigits) < 1) {
        $lastdigits = "000";
    }
    db_connect();
    # Locations drop down
    $locs = array("loc" => "Local", "int" => "International");
    $locsel = extlib_cpsel("loc", $locs, $loc);
    # currency drop down
    $currsel = ext_unddbsel("fcid", "currency", "fcid", "descrip", "There are is no currency found in Cubit, please add currency first.", "");
    $chm = "";
    $chv = "";
    $cho = "";
    if ($cardtyp == 'Visa') {
        $chv = "checked=yes";
    } elseif ($cardtyp == 'Mastercard') {
        $chm = "checked=yes";
    } else {
        $cho = "checked=yes";
    }
    core_connect();
    $sql = "SELECT * FROM accounts WHERE acctype = 'B' AND div = '" . USER_DIV . "' ORDER BY accname";
    $accRslt = db_exec($sql) or errDie("Could not retrieve accounts from Cubit.", SELF);
    if (pg_numrows($accRslt) < 1) {
        return "<li> There are no balance accouts in Cubit.";
    }
    $accs = "<select name=accid>";
    while ($acc = pg_fetch_array($accRslt)) {
        if (isbank($acc['accid'])) {
            continue;
        }
        if (isb($acc['accid'])) {
            continue;
        }
        $accs .= "<option value='{$acc['accid']}'>{$acc['accname']}</option>";
    }
    $accs .= "</select>";
    //layout
    $view = "\n\t<h3>Add New Petrol Card Account</h3>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<form action='" . SELF . "' method=post name=form>\n\t<input type=hidden name=key value=confirm>\n\t<tr><td colspan=2>{$err}</td></tr>\n\t<tr><th>Field</th><th>Value</th></tr>\n\t<tr class='bg-odd'><td>" . REQ . "Bank Name</td><td ><input type=text size=20 name=bankname value='{$bankname}'></td></tr>\n\t<tr class='bg-even'><td>" . REQ . "Type</td><td>{$locsel}</td></tr>\n\t<tr class='bg-odd'><td>" . REQ . "Currency</td><td>{$currsel}</td></tr>\n\t<tr class='bg-even'><td>" . REQ . "Branch Name</td><td ><input type=text size=20 name=branchname value='{$branchname}'></td></tr>\n\t<tr class='bg-odd'><td>" . REQ . "Branch Code</td><td ><input type=text size=20 name=branchcode value='{$branchcode}'></td></tr>\n\t<tr class='bg-even'><td>" . REQ . "Account Name</td><td ><input type=text size=20 name=accname maxlength=50 value='{$accname}'></td></tr>\n\t<tr class='bg-odd'><td>" . REQ . "Account Number</td><td ><input type=text size=20 name=accnum value='{$accnum}'></td></tr>\n\t<tr class='bg-even'><td>" . REQ . "Ledger Account</td><td>{$accs}</td></tr>\n\t<tr class='bg-odd'><td>" . REQ . "Card Number</td><td ><input type=text size=25 name=cardnum maxlength=16 value='{$cardnum}'></td></tr>\n\t<tr class='bg-even'><td>" . REQ . "Expiry Date</td><td><input type=text size=2 name=mon maxlength=2 value='{$mon}'>-<input type=text size=4 name=year maxlength=4 value='{$year}'>MM-YYYY</td></tr>\n\t<tr class='bg-odd'><td>" . REQ . "Last 3 Digits at back of Card</td><td ><input type=text size=3 maxlength=3 name=lastdigits value='{$lastdigits}'></td></tr>\n\t<tr class='bg-even'><td>Card Type</td><td><input type=radio name=cardtyp value=Visa {$chv}>Visa &nbsp;&nbsp; <input type=radio name=cardtyp value='Mastercard' {$chm}> Mastercard &nbsp;&nbsp;&nbsp;<input type=radio name=cardtyp value='other' {$cho}>Other: <input type=text name=cardname value='{$cardname}'></td>\n\t<tr class='bg-odd'><td>" . REQ . "Details</td><td ><textarea cols=20 rows=3 name=details>{$details}</textarea></td></tr>\n\t<tr><td><br></td></tr>\n\t<tr><td><input type=button value='&laquo Cancel' onClick='javascript:history.back();'></td><td ><input type=submit value='Confirm &raquo'></td></tr>\n\t</form>\n\t</table>\n\t<p>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t\t<tr><th>Quick Links</th></tr>\n\t\t<tr class='bg-odd'><td><a href='../core/acc-new2.php'>Add Ledger Account</a></td></tr>\n\t\t<tr class='bg-odd'><td><a href='../main.php'>Main Menu</a></td></tr>\n\t</table>";
    return $view;
}
function enter()
{
    $Sl = "SELECT * FROM posround";
    $Rs = db_exec($Sl) or errDie("Unable to add supplier to the system.", SELF);
    if (pg_numrows($Rs) < 1) {
        $Sl = "INSERT INTO posround (setting) VALUES ('No')";
        $Rs = db_exec($Sl) or errDie("Unable to add supplier to the system.", SELF);
        $Sl = "SELECT * FROM posround";
        $Rs = db_exec($Sl) or errDie("Unable to add supplier to the system.", SELF);
    }
    $Dets = pg_fetch_array($Rs);
    $ops = array("5cent" => "Yes(to nearest 5c)", "No" => "No");
    $Ops = extlib_cpsel("op", $ops, $Dets['setting']);
    $enter = "<h3>Point of Sale Setting</h3>\r\n\t<form action='" . SELF . "' method=post>\r\n\t<table cellpadding=0 cellspacing=0>\r\n\t<tr valign=top><td>\r\n\t\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t\t<input type=hidden name=key value=confirm>\r\n\t\t<tr><th colspan=2>Setting</th></tr>\r\n\t\t<tr class='bg-even'><td>POS rounding</td><td>{$Ops}</td></tr>\r\n\t\t</table>\r\n\t</td></tr>\r\n\t<tr><td valign=bottom><input type=submit value='Confirm &raquo;'></td></tr>\r\n\t</table>\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='main.php'>Main Menu</a></td></tr>\r\n\t</table>";
    return $enter;
}
Ejemplo n.º 10
0
function enter()
{
    $Sl = "SELECT * FROM possets WHERE div = '" . USER_DIV . "'";
    $Rs = db_exec($Sl) or errDie("Unable to add supplier to the system.", SELF);
    if (pg_numrows($Rs) < 1) {
        $Sl = "INSERT INTO possets (opt,div) VALUES ('Yes','" . USER_DIV . "')";
        $Rs = db_exec($Sl) or errDie("Unable to add supplier to the system.", SELF);
        $Sl = "SELECT * FROM possets WHERE div = '" . USER_DIV . "'";
        $Rs = db_exec($Sl) or errDie("Unable to add supplier to the system.", SELF);
    }
    $Dets = pg_fetch_array($Rs);
    $ops = array("Yes" => "Yes", "No" => "No");
    $Ops = extlib_cpsel("op", $ops, $Dets['opt']);
    $enter = "<h3>Stock Point of Sale Setting<br>If you say 'No' it would mean for instance that every can of cola has its own bar code.</h3>\r\n\t<form action='" . SELF . "' method=post>\r\n\t<table cellpadding=0 cellspacing=0>\r\n\t<tr valign=top><td>\r\n\t\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t\t<input type=hidden name=key value=confirm>\r\n\t\t<tr><th colspan=2>Setting</th></tr>\r\n\t\t<tr class='bg-even'><td>Each Stock Code has a Bar Code</td><td>{$Ops}</td></tr>\r\n\t\t</table>\r\n\t</td></tr>\r\n\t<tr><td valign=bottom><input type=submit value='Confirm &raquo;'></td></tr>\r\n\t</table>\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=datacell><td align=center><a href='stock-settings.php'>Stock Settings</td></tr>\r\n\t<tr class=datacell><td align=center><a href='settings-index.php'>Settings</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;
}
Ejemplo n.º 11
0
function enterAllow()
{
    # connect to db
    core_connect();
    $allcat = "<select name='catid'>";
    $sql = "SELECT * FROM expenditure WHERE div = '" . USER_DIV . "'";
    $catRslt = db_exec($sql);
    if (pg_numrows($catRslt) < 1) {
        return "<li> There are no Expenditure Accounts categories yet in Cubit.";
    } else {
        while ($cat = pg_fetch_array($catRslt)) {
            $allcat .= "<option value='{$cat['catid']}'>{$cat['catname']}</option>";
        }
    }
    $allcat .= "</select>";
    $Tp = array("No" => "No", "Yes" => "Yes");
    $taxables = extlib_cpsel("taxable", $Tp, "Yes");
    $enterAllow = "<h3>Add reimbursement to system</h3>\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<form action='" . SELF . "' method=post>\n\t<input type=hidden name=key value=confirm>\n\t<tr><th colspan=2>Reimbursement Details</th></tr>\n\t<tr class='bg-odd'><td>Name</td><td align=center><input type=text size=20 name=name></td></tr>\n\t<tr class='bg-even'><td>Account Category</td><td align=center>{$allcat}</td></tr>\n\t<tr><td colspan=2 align=right><input type=submit value='Confirm &raquo;'></td></tr>\n\t</form>\n\t</table>" . mkQuickLinks(ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $enterAllow;
}
function view()
{
    # dates drop downs
    $months = array("1" => "January", "2" => "February", "3" => "March", "4" => "April", "5" => "May", "6" => "June", "7" => "July", "8" => "August", "9" => "September", "10" => "October", "11" => "November", "12" => "December");
    $fmonth = extlib_cpsel("fmonth", $months, date("m"));
    $lmonth = extlib_cpsel("lmonth", $months, date("m"));
    // Layout
    $view = "\n        <h3>View Saved Bank Reconciliations</h3>\n        <table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' width=350>\n        <form action='" . SELF . "' method=post name=form>\n        <input type=hidden name=key value=viewsaved>\n        <tr><th>Field</th><th>Value</th></tr>\n        <tr class='bg-odd'><td>Bank Account</td>\n        <td valign=center><select name=bankid>";
    db_connect();
    $sql = "SELECT * FROM bankacct";
    $banks = db_exec($sql);
    $numrows = pg_numrows($banks);
    if (empty($numrows)) {
        return "<li class=err> There are no accounts held at the selected Bank.\n                <p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct Selection'>";
    }
    while ($acc = pg_fetch_array($banks)) {
        $view .= "<option value={$acc['bankid']}>{$acc['accname']} - {$acc['bankname']}</option>";
    }
    $view .= "</select></td></tr>\n\t\t<tr class='bg-odd'><td>From :</td><td valign=center><input type=text name=fday size=2 maxlength=2 value='1'> - {$fmonth} - <input type=text name=fyear size=4 maxlength=4 value=" . date("Y") . "></td></tr>\n\t\t<tr class='bg-even'><td>To :</td><td valign=center><input type=text name=lday size=2 maxlength=2 value='" . date("d") . "'> - {$lmonth} - <input type=text name=lyear size=4 maxlength=4 value=" . date("Y") . "></td></tr>\n\t\t<tr><td><br></td></tr>\n\t\t<tr><td align=right><input type=button value='&laquo Back' onClick='javascript:history.back()'></td><td align=right><input type=submit value='View &raquo'></td></tr>\n        </table>\n        <p>\n\t\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t        <tr><th>Quick Links</th></tr>\n            <script>document.write(getQuicklinkSpecial());</script>\n\t\t</table>";
    return $view;
}
Ejemplo n.º 13
0
function view()
{
    # dates drop downs
    $months = array("1" => "January", "2" => "February", "3" => "March", "4" => "April", "5" => "May", "6" => "June", "7" => "July", "8" => "August", "9" => "September", "10" => "October", "11" => "November", "12" => "December");
    $fmonth = extlib_cpsel("fmonth", $months, date("m"));
    $lmonth = extlib_cpsel("lmonth", $months, date("m"));
    // main layout
    $view = "\n\t\t<h3>View Cash Book</h3>\n\t\t<h4>Select Period</h4>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t\t<input type='hidden' name='key' value='viewcash' />\n\t\t\t<input type='hidden' name='order' value='' />\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 valign='center'><select name='bankid'>";
    db_connect();
    $sql = "SELECT * FROM bankacct WHERE div = '" . USER_DIV . "' ORDER BY accname,bankname";
    $banks = db_exec($sql);
    $numrows = pg_numrows($banks);
    if (empty($numrows)) {
        return "<li class='err'> There are no accounts held at the selected Bank.\n\t\t<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct Selection'>";
    }
    while ($acc = pg_fetch_array($banks)) {
        $view .= "<option value='{$acc['bankid']}'>{$acc['accname']} - {$acc['bankname']} ({$acc['acctype']})</option>";
    }
    $view .= "\n\t\t\t\t</select>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>From:</td>\n\t\t\t<td valign='center'>" . mkDateSelect("f", DATE_YEAR, DATE_MONTH, 1) . "</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>To:</td>\n\t\t\t<td valign='center'>" . mkDateSelect("l", DATE_YEAR, DATE_MONTH, DATE_DAY) . "</td></tr>\n\t\t<tr>\n\t\t\t<td align='right'></td>\n\t\t\t<td align='right'><input type='submit' value='View &raquo' /></td>\n\t\t</tr>\n\t\t</table>" . mkQuickLinks(ql("../core/acc-new2.php", "Add New Account"));
    return $view;
}
Ejemplo n.º 14
0
function view($acctype = "", $bankname = "", $loc = "", $branchname = "", $branchcode = "", $accname = "", $accnum = "", $details = "", $err = "")
{
    db_connect();
    # Locations drop down
    $locs = array("loc" => "Local", "int" => "International");
    $locsel = extlib_cpsel("loc", $locs, $loc);
    # currency drop down
    $currsel = ext_unddbsel("fcid", "currency", "fcid", "descrip", "There are is no currency found in Cubit, please add currency first.", "");
    //layout
    $view = "\n\t\t<h3>Add New Bank Account</h3>\n\t\t<table " . TMPL_tblDflts . " width='300'>\n\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t\t<input type='hidden' name='key' value='confirm'>\n\t\t\t{$err}\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>" . REQ . "Type of Account</td>\n\t\t\t\t<td valign='center'><input type='text' size='20' name='acctype' value='{$acctype}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Bank Name</td>\n\t\t\t\t<td valign='center'><input type='text' size='20' name='bankname' value='{$bankname}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Type</td>\n\t\t\t\t<td>{$locsel}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Currency</td>\n\t\t\t\t<td>{$currsel}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Branch Name</td>\n\t\t\t\t<td valign='center'><input type='text' size='20' name='branchname' value='{$branchname}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Branch Code</td>\n\t\t\t\t<td valign='center'><input type='text' size='20' name='branchcode' value='{$branchcode}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Account Name</td>\n\t\t\t\t<td valign='center'><input type='text' size='20' name='accname' maxlength='50' value='{$accname}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Account Number</td>\n\t\t\t\t<td valign='center'><input type='text' size='20' name='accnum' value='{$accnum}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Account Category</td>\n\t\t\t\t<td>\n\t\t\t\t\t<select name='catid'>";
    core_connect();
    $sql = "SELECT * FROM balance WHERE div = '" . USER_DIV . "' ORDER BY catname";
    $catRslt = db_exec($sql) or errDie("Could not retrieve Categories Information from the Database.", SELF);
    $rows = pg_numrows($catRslt);
    if ($rows < 1) {
        return "There are no Account Categories under Balance";
    }
    while ($cat = pg_fetch_array($catRslt)) {
        $view .= "<option value='{$cat['catid']}'>{$cat['catname']}</option>";
    }
    $view .= "\n\t\t\t\t\t</select>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Details</td>\n\t\t\t\t<td valign='center'><textarea cols='20' rows='5' name='details'>{$details}</textarea></td></tr>\n\t\t\t<tr>\n\t\t\t\t<td></td>\n\t\t\t\t<td valign='center' align='right'><input type='submit' value='Confirm &raquo;'></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<tr class='" . bg_class() . "'>\n\t\t\t\t<td><a href='../core/acc-new2.php'>Add Ledger Account</a></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><a href='../main.php'>Main Menu</a></td>\n\t\t\t</tr>\n\t\t</table>";
    return $view;
}
Ejemplo n.º 15
0
function enterDeduct()
{
    # connect to db
    core_connect();
    $dedcat = "<select name='catid'>";
    $sql = "SELECT * FROM balance WHERE div = '" . USER_DIV . "'";
    $catRslt = db_exec($sql);
    if (pg_numrows($catRslt) < 1) {
        return "<li> There are no Balance Accounts categories yet in Cubit.";
    } else {
        while ($cat = pg_fetch_array($catRslt)) {
            if ($cat["catname"] == "Balance") {
                $selected = "selected";
            } else {
                $selected = "";
            }
            $dedcat .= "<option value='{$cat['catid']}' {$selected}>{$cat['catname']}</option>";
        }
    }
    $dedcat .= "</select>";
    # connect to db
    db_connect();
    # get last inserted id for new ref no
    // a little hack to make stoopid postgres not return a 1 as last id, when there is no last id
    if (pg_numrows(db_exec("SELECT 1 FROM salded")) < 1) {
        $lastid = 1;
    } else {
        $lastid = pglib_lastid("salded", "id") + 1;
    }
    $refno = "saldeduct" . sprintf("%02d", $lastid);
    $Tp = array("No" => "No", "Yes" => "Yes");
    $taxables = extlib_cpsel("taxable", $Tp, "No");
    $arrtype = array("Amount" => "Amount", "Percentage" => "Percentage");
    $seltype = extlib_cpsel("type", $arrtype, "Percentage");
    $enterDeduct = "<h3>New salary deduction</h3>\n        <table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n        <form action='" . SELF . "' method=post>\n        <input type=hidden name=key value=confirm>\n        <input type=hidden name=refno value='{$refno}'>\n        <tr><th>Field</th><th>Value</th></tr>\n        <tr class='bg-odd'><td>Name of deduction</td><td align=center><input type=text size=20 name=deduction></td></tr>\n        <tr class='bg-even'><td>Creditor name</td><td align=center><input type=text size=20 name=creditor></td></tr>\n        <tr class='bg-odd'><td>Reference no.</td><td align=center>{$refno}</td></tr>\n\t<tr class='bg-even'><td>Account Category</td><td align=center>{$dedcat}</td></tr>\n\t<tr class='bg-odd'><td>Creditor details</td><td align=center><input type=text size=20 name=details></td></tr>\n\t<tr class='bg-even'><td>Deduct Before PAYE</td><td align=center>{$taxables}</td></tr>\n\t<tr class='bg-odd'><td>Deduction Type</td><td>{$seltype}</td></tr>\n\n\t<tr><td colspan=2 align=right><input type=submit value='Confirm &raquo;'></td></tr>\n        </form></table>" . mkQuickLinks(ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $enterDeduct;
}
Ejemplo n.º 16
0
function slctDate()
{
    db_connect();
    #check what we have permission to
    $get_perm = "SELECT payroll_groups FROM users WHERE username = '******'USER_NAME']}' LIMIT 1";
    $run_perm = db_exec($get_perm) or errDie("Unable to get payroll groups permission information.");
    if (pg_numrows($run_perm) > 0) {
        $parr = pg_fetch_array($run_perm);
        if (strlen($parr['payroll_groups']) > 0) {
            $pay_grps = explode(",", $parr['payroll_groups']);
            if (is_array($pay_grps)) {
                $egsearch = " AND (emp_group = '" . implode("' OR emp_group = '", $pay_grps) . "')";
            }
        } else {
            $egsearch = "AND false";
        }
    }
    $sql = "SELECT enum,empnum, sname, fnames FROM employees WHERE div = '" . USER_DIV . "' {$egsearch} ORDER BY sname";
    $empRslt = db_exec($sql) or errDie("Unable to select employees from database.");
    if (pg_numrows($empRslt) < 1) {
        //	return "No employees found in database.<p>"
        //		.mkQuickLinks();
    }
    $employees = array("0" => "All");
    while ($d = pg_fetch_array($empRslt)) {
        $employees[$d["empnum"]] = "{$d['sname']}, {$d['fnames']} ({$d['enum']})";
    }
    $fields = array("empnum" => 0, "from_year" => DATE_YEAR, "from_month" => DATE_MONTH, "from_day" => 1, "to_year" => DATE_YEAR, "to_month" => DATE_MONTH, "to_day" => getDaysInMonth(DATE_MONTH, DATE_YEAR));
    foreach ($fields as $fname => $dflt) {
        if (!isset(${$fname})) {
            ${$fname} = $dflt;
        }
    }
    $OUT = "\n\t\t<h3>Select date range to view</h3>\n\t\t<form action='" . SELF . "' method='POST'>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<input type='hidden' name='key' value='slip'>\n\t\t\t<tr>\n\t\t\t\t<th>Employee</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'>" . extlib_cpsel("empnum", $employees, $empnum) . "</td>\n\t\t\t</tr>\n\t\t\t<tr><th colspan='2'>Date Range</th></tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'  colspan='2'>\n\t\t\t\t\t" . mkDateSelect("from", $from_year, $from_month, $from_day) . "\n\t\t\t\t\t&nbsp;&nbsp;&nbsp;TO&nbsp;&nbsp;&nbsp;\n\t\t\t\t\t" . mkDateSelect("to", $to_year, $to_month, $to_day) . "\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td colspan='2' align='right'><input type='submit' value='View &raquo;'></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t</form>" . mkQuickLinks();
    return $OUT;
}
function enterFringe()
{
    global $_GET;
    extract($_GET);
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($id, "num", 1, 20, "Invalid 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;
    }
    # get deduction info
    db_connect();
    $sql = "SELECT * FROM fringebens WHERE id='{$id}' AND div = '" . USER_DIV . "'";
    $rslt = db_exec($sql) or errDie("Unable to select info from database.");
    if (pg_numrows($rslt) < 1) {
        return "Invalid fringe benefit ID.";
    }
    $myFringe = pg_fetch_array($rslt);
    $arrtype = array("Amount" => "Amount", "Percentage" => "Percentage");
    $seltype = extlib_cpsel("type", $arrtype, $myFringe["type"]);
    # get ledger account name
    core_connect();
    $sql = "SELECT accname FROM accounts WHERE accid = '{$myFringe['accid']}' AND div = '" . USER_DIV . "'";
    $accRslt = db_exec($sql);
    $acc = pg_fetch_array($accRslt);
    $OUTPUT = "<h3>Edit Fringe Benefit</h3>\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<form action='" . SELF . "' method=get>\n\t<input type=hidden name=key value=confirm>\n\t<input type=hidden name=id value='{$id}'>\n\t<tr><th>Field</th><th>Value</th></tr>\n\t<tr class='bg-odd'><td>Name</td><td align=center><input type=text size=20 name=fringeben value='{$myFringe['fringeben']}'></td></tr>\n\t<tr class='bg-even'><td>Type</td><td>{$seltype}</td></tr>\n\t<tr><td colspan=2 align=right><input type=submit value='Confirm &raquo;'></td></tr>\n\t</form>\n\t</table>" . mkQuickLinks(ql("../admin-employee-add.php", "Add Employee"), ql("../admin-employee-view.php", "View Employees"));
    return $OUTPUT;
}
function error($_POST, $error)
{
    # Get vars
    foreach ($_POST as $key => $value) {
        ${$key} = $value;
    }
    /* Toggle options */
    global $BUDFOR, $TYPES, $YEARS;
    $typesel = extlib_cpsel("budtype", $TYPES, $budtype);
    $fromyrsel = extlib_cpsel("fromyr", $YEARS, $fromyr);
    $toyrsel = extlib_cpsel("toyr", $YEARS, $toyr);
    # keep the charge vat option stable
    $chc = "";
    $cha = "";
    if ($budfor == 'cost') {
        $chc = "checked=yes";
    } else {
        $cha = "checked=yes";
    }
    /* End Toggle Options */
    // Options Layout
    $error = "<center>\n\t<h3> New Yearly Budget </h3>\n\t<form action='" . SELF . "' method=post name=form>\n\t<input type=hidden name=key value=details>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' align=center>\n\t<tr><th colspan=2>{$error}</th></tr>\n\t<tr><th colspan=2>Details</th></tr>\n\t<tr class='bg-odd'><td>Budget Name</td><td><input type=text size=30 name=budname value='{$budname}'></td></tr>\n\t<tr><td><br></td></tr>\n\t<tr><th colspan=2>Options</th></tr>\n\t<tr class='bg-odd'><td>Budget For</td><td><input type=radio name=budfor value=cost {$chc}>Cost Centers &nbsp;&nbsp; <input type=radio name=budfor value=acc {$cha}>Accounts</td>\n\t<tr class='bg-even'><td>Budget Type</td><td>{$typesel}</td>\n\t<tr class='bg-odd'><td>Budget Year</td><td>{$fromyrsel} to {$toyrsel}</td>\n\t<tr><td><br></td></tr>\n\t<tr><td align=right>&nbsp;</td><td align=right><input type=submit value='Continue &raquo'></td></tr>\n\t</table></form>\n\t<p>\n\t<table border=0 cellpadding='2' cellspacing='1' width=15%>\n\t\t<tr><th>Quick Links</th></tr>\n\t\t<tr class='bg-odd'><td align=center><a href='budget-view.php'>View Budgets</td></tr>\n\t\t<tr class='bg-odd'><td align=center><a href='../main.php'>Main Menu</td></tr>\n\t</table>";
    return $error;
}
function details($_POST, $error = "")
{
    # get vars
    foreach ($_POST as $key => $value) {
        ${$key} = $value;
    }
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($invid, "num", 1, 20, "Invalid invoice number.");
    # display errors, if any
    if ($v->isError()) {
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $error .= "<li class=err>" . $e["msg"];
        }
        $confirm .= "{$error}<p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirm;
    }
    # Get invoice info
    db_connect();
    $sql = "SELECT * FROM invoices WHERE invid = '{$invid}' AND div = '" . USER_DIV . "'";
    $invRslt = db_exec($sql) or errDie("Unable to get invoice information");
    if (pg_numrows($invRslt) < 1) {
        return "<li class=err>Invoice Not Found</li>";
    }
    $inv = pg_fetch_array($invRslt);
    # check if invoice has been printed
    if ($inv['printed'] == "y") {
        $error = "<li class=err> Error : Invoice number <b>{$invid}</b> has already been printed.";
        $error .= "<p><input type=button onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $error;
    }
    # get department
    db_conn("exten");
    $sql = "SELECT * FROM departments WHERE deptid = '{$inv['deptid']}' AND div = '" . USER_DIV . "'";
    $deptRslt = db_exec($sql);
    if (pg_numrows($deptRslt) < 1) {
        $dept['deptname'] = "<li class=err>Department not Found.";
    } else {
        $dept = pg_fetch_array($deptRslt);
    }
    # Get selected customer info
    db_connect();
    $sql = "SELECT * FROM customers WHERE cusnum = '{$inv['cusnum']}' AND div = '" . USER_DIV . "'";
    $custRslt = db_exec($sql) or errDie("Unable to view customer");
    if (pg_numrows($custRslt) < 1) {
        return "<li class=err>Error : Client not Found";
    } else {
        $cust = pg_fetch_array($custRslt);
        # moarn if customer account has been blocked
        if ($cust['blocked'] == 'yes') {
            return "<li class=err>Error : Selected customer account has been blocked.";
        }
        $customers = "<input type=hidden name=cusnum value='{$cust['cusnum']}'>{$cust['cusname']}  {$cust['surname']}";
        $cusnum = $cust['cusnum'];
    }
    /* --- Start Drop Downs --- */
    # Select warehouse
    db_conn("exten");
    $whs = "<select name='whidss[]' onChange='javascript:document.form.submit();'>";
    $sql = "SELECT * FROM warehouses WHERE div = '" . USER_DIV . "' ORDER BY whname ASC";
    $whRslt = db_exec($sql);
    if (pg_numrows($whRslt) < 1) {
        return "<li class=err> There are no Stores found in Cubit.";
    } else {
        $whs .= "<option value='-S' disabled selected>Select Store</option>";
        while ($wh = pg_fetch_array($whRslt)) {
            $whs .= "<option value='{$wh['whid']}'>({$wh['whno']}) {$wh['whname']}</option>";
        }
    }
    $whs .= "</select>";
    # get sales people
    db_conn("exten");
    $sql = "SELECT * FROM salespeople WHERE div = '" . USER_DIV . "' ORDER BY salesp ASC";
    $salespRslt = db_exec($sql) or errDie("Unable to get sales people.");
    if (pg_numrows($salespRslt) < 1) {
        return "<li class=err> There are no Sales People found in Cubit.";
    } else {
        $salesps = "<select name='salespn'>";
        while ($salesp = pg_fetch_array($salespRslt)) {
            if ($salesp['salesp'] == $inv['salespn']) {
                $sel = "selected";
            } else {
                $sel = "";
            }
            $salesps .= "<option value='{$salesp['salesp']}' {$sel}>{$salesp['salesp']}</option>";
        }
        $salesps .= "</select>";
    }
    # days drop downs
    $days = array("0" => "0", "30" => "30", "60" => "60", "90" => "90", "120" => "120");
    $termssel = extlib_cpsel("terms", $days, $inv['terms']);
    # Keep the charge vat option stable
    if ($inv['chrgvat'] == "inc") {
        $chin = "checked=yes";
        $chex = "";
        $chno = "";
    } elseif ($inv['chrgvat'] == "exc") {
        $chin = "";
        $chex = "checked=yes";
        $chno = "";
    } else {
        $chin = "";
        $chex = "";
        $chno = "checked=yes";
    }
    # format date
    list($oyear, $omon, $oday) = explode("-", $inv['odate']);
    /* --- End Drop Downs --- */
    /* --- Start Products Display --- */
    # select all products
    $products = "\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' border=0 width=100%>\n\t<tr><th>STORE</th><th>ITEM NUMBER</th><th>DESCRIPTION</th><th>QTY</th><th>UNIT PRICE</th><th>UNIT DISCOUNT</th><th>AMOUNT</th><th>Remove</th><tr>";
    # get selected stock in this invoice
    db_connect();
    $sql = "SELECT * FROM inv_items  WHERE invid = '{$invid}' AND div = '" . USER_DIV . "'";
    $stkdRslt = db_exec($sql);
    $i = 0;
    $key = 0;
    while ($stkd = pg_fetch_array($stkdRslt)) {
        # keep track of selected stock amounts
        $amts[$i] = $stkd['amt'];
        $i++;
        # get warehouse name
        db_conn("exten");
        $sql = "SELECT whname FROM warehouses WHERE whid = '{$stkd['whid']}' AND div = '" . USER_DIV . "'";
        $whRslt = db_exec($sql);
        $wh = pg_fetch_array($whRslt);
        # get selected stock in this warehouse
        db_connect();
        $sql = "SELECT * FROM stock WHERE stkid = '{$stkd['stkid']}' AND div = '" . USER_DIV . "'";
        $stkRslt = db_exec($sql);
        $stk = pg_fetch_array($stkRslt);
        # put in product
        $products .= "<tr class='bg-odd'><td><input type=hidden name=whids[] value='{$stkd['whid']}'>{$wh['whname']}</td><td><input type=hidden name=stkids[] value='{$stkd['stkid']}'><a href='#' onclick='openwindow(\"stock-amt-det.php?stkid={$stk['stkid']}\")'>{$stk['stkcod']}</a></td><td>" . extlib_rstr($stk['stkdes'], 30) . "</td><td><input type=text size=4 name=qtys[] value='{$stkd['qty']}'></td><td><input type=hidden size=8 name=unitcost[] value='{$stkd['unitcost']}'>{$stkd['unitcost']}</td><td><input type=text size=4 name=disc[] value='{$stkd['disc']}'> OR <input type=text size=4 name=discp[] value='{$stkd['discp']}' maxlength=5>%</td><td><input type=hidden name=amt[] value='{$stkd['amt']}'> " . CUR . " {$stkd['amt']}</td><td><input type=checkbox name=remprod[] value='{$key}'><input type=hidden name=SCROLL value=yes></td></tr>";
        $key++;
    }
    # Look above(remprod keys)
    $keyy = $key;
    # look above(if i = 0 then there are no products)
    if ($i == 0) {
        $done = "";
    } else {
        $SCROLL = "yes";
    }
    # check if stock warehouse was selected
    if (isset($whidss)) {
        foreach ($whidss as $key => $whid) {
            if (isset($stkidss[$key]) && $stkidss[$key] != "-S") {
                # skip if not selected
                if ($whid == "-S") {
                    continue;
                }
                # get selected warehouse name
                db_conn("exten");
                $sql = "SELECT whname FROM warehouses WHERE whid = '{$whid}' AND div = '" . USER_DIV . "'";
                $whRslt = pg_exec($sql);
                $wh = pg_fetch_array($whRslt);
                # get selected stock in this warehouse
                db_connect();
                $sql = "SELECT * FROM stock WHERE stkid = '{$stkidss[$key]}' AND div = '" . USER_DIV . "' ORDER BY stkcod ASC";
                $stkRslt = db_exec($sql);
                $stk = pg_fetch_array($stkRslt);
                # get price from price list if it is set
                if (isset($cust['pricelist'])) {
                    # get selected stock in this warehouse
                    db_conn("exten");
                    $sql = "SELECT price FROM plist_prices WHERE listid = '{$cust['pricelist']}' AND stkid = '{$stk['stkid']}' AND div = '" . USER_DIV . "'";
                    $plRslt = db_exec($sql);
                    if (pg_numrows($plRslt) > 0) {
                        $pl = pg_fetch_array($plRslt);
                        $stk['selamt'] = $pl['price'];
                    }
                }
                /* -- Start Some Checks -- */
                # check if they are selling too much
                if ($stk['units'] - $stk['alloc'] < $qtyss[$key]) {
                    if (!in_array($stk['stkid'], explode(",", $stkerr))) {
                        if ($stk['type'] != 'lab') {
                            $stkerr .= ",{$stk['stkid']}";
                            $error .= "<li class=err>Warning :  Item number <b>{$stk['stkcod']}</b> does not have enough items available.</li>";
                        }
                    }
                }
                /* -- End Some Checks -- */
                # Calculate the Discount discount
                if ($discs[$key] < 1) {
                    if ($discps[$key] > 0) {
                        $discs[$key] = round($discps[$key] / 100 * $stk['selamt'], 2);
                    }
                } else {
                    $discps[$key] = round($discs[$key] * 100 / $stk['selamt'], 2);
                }
                # Calculate amount
                # $amt[$key] = (($qtyss[$key] * $stk['selamt']) - $discs[$key]);
                $amt[$key] = $qtyss[$key] * ($stk['selamt'] - $discs[$key]);
                # Put in selected warehouse and stock
                $products .= "<tr class='bg-odd'><td><input type=hidden name=whids[] value='{$whid}'>{$wh['whname']}</td><td><input type=hidden name=stkids[] value='{$stk['stkid']}'><a href='#' onclick='openwindow(\"stock-amt-det.php?stkid={$stk['stkid']}\")'>{$stk['stkcod']}</a></td><td>" . extlib_rstr($stk['stkdes'], 30) . "</td><td><input type=text size=4 name=qtys[] value='{$qtyss[$key]}'></td><td><input type=hidden size=8 name='unitcost[]'  value='{$stk['selamt']}'>{$stk['selamt']}</td><td><input type=text size=4 name=disc[] value='{$discs[$key]}'> OR <input type=text size=4 name=discp[] value='{$discps[$key]}' maxlength=5>%</td><td><input type=hidden name=amt[] value='{$amt[$key]}'> " . CUR . " {$amt[$key]}</td><td><input type=checkbox name=remprod[] value='{$keyy}'></td></tr>";
                $keyy++;
            } else {
                if (!isset($diffwhBtn)) {
                    # skip if not selected
                    if ($whid == "-S") {
                        continue;
                    }
                    # get warehouse name
                    db_conn("exten");
                    $sql = "SELECT whname FROM warehouses WHERE whid = '{$whid}' AND div = '" . USER_DIV . "'";
                    $whRslt = db_exec($sql);
                    $wh = pg_fetch_array($whRslt);
                    # get stock on this warehouse
                    db_connect();
                    $sql = "SELECT * FROM stock WHERE whid = '{$whid}' AND blocked = 'n' AND div = '" . USER_DIV . "' ORDER BY stkcod ASC";
                    $stkRslt = db_exec($sql) or errDie("Unable to retrieve stocks from database.");
                    if (pg_numrows($stkRslt) < 1) {
                        $error .= "<li class=err>There are no stock items in the selected warehouse.";
                        continue;
                    }
                    $stks = "<select class='width:15'name='stkidss[]' onChange='javascript:document.form.submit();'>";
                    $stks .= "<option value='-S' disabled selected>Select Number</option>";
                    $count = 0;
                    while ($stk = pg_fetch_array($stkRslt)) {
                        $stks .= "<option value='{$stk['stkid']}'>{$stk['stkcod']} (" . ($stk['units'] - $stk['alloc']) . ")</option>";
                    }
                    $stks .= "</select> ";
                    # put in drop down and warehouse
                    $products .= "<tr class='bg-odd'><td><input type=hidden name=whidss[] value='{$whid}'>{$wh['whname']}</td><td>{$stks}</td><td> </td><td><input type=text size=4 name='qtyss[]'  value='1'></td><td> </td><td><input type=text size=4 name=discs[] value='0'> OR <input type=text size=4 name=discps[] value='0' maxlength=5>%</td><td><input type=hidden name=amts[] value='0.00'>" . CUR . " 0.00</td><td></td></tr>";
                }
            }
        }
    } else {
        if (!isset($diffwhBtn)) {
            # check if setting exists
            db_connect();
            $sql = "SELECT value FROM set WHERE label = 'DEF_WH' AND div = '" . USER_DIV . "'";
            $Rslt = db_exec($sql) or errDie("Unable to check database for existing settings.");
            if (pg_numrows($Rslt) > 0) {
                $set = pg_fetch_array($Rslt);
                $whid = $set['value'];
                # get selected warehouse name
                db_conn("exten");
                $sql = "SELECT whname FROM warehouses WHERE whid = '{$whid}' AND div = '" . USER_DIV . "'";
                $whRslt = db_exec($sql);
                $wh = pg_fetch_array($whRslt);
                # get stock on this warehouse
                db_connect();
                $sql = "SELECT * FROM stock WHERE whid = '{$whid}' AND blocked = 'n' AND div = '" . USER_DIV . "' ORDER BY stkcod ASC";
                $stkRslt = db_exec($sql) or errDie("Unable to retrieve stocks from database.");
                if (pg_numrows($stkRslt) < 1) {
                    $err .= "<li>There are no stock items in the selected store.";
                    continue;
                }
                $stks = "<select name='stkidss[]' onChange='javascript:document.form.submit();'>";
                $stks .= "<option value='-S' disabled selected>Select Number</option>";
                $count = 0;
                while ($stk = pg_fetch_array($stkRslt)) {
                    $stks .= "<option value='{$stk['stkid']}'>{$stk['stkcod']} (" . ($stk['units'] - $stk['alloc']) . ")</option>";
                }
                $stks .= "</select> ";
                $products .= "<tr class='bg-odd'><td><input type=hidden name=whidss[] value='{$whid}'>{$wh['whname']}</td><td>{$stks}</td><td> </td><td><input type=text size=4 name=qtyss[] value='1'></td><td> </td><td><input type=text size=4 name=discs[] value='0'> OR <input type=text size=4 name=discps[] value='0' maxlength=5>%</td><td>" . CUR . " 0.00</td><td></td></tr>";
            } else {
                $products .= "<tr class='bg-odd'><td>{$whs}</td><td></td><td> </td><td> </td><td> </td><td><input type=text size=4 name=discs[] value='0'> OR <input type=text size=4 name=discps[] value='0' maxlength=5>%</td><td>" . CUR . " 0.00</td><td></td></tr>";
            }
        }
    }
    /* -- start Listeners -- */
    if (isset($diffwhBtn)) {
        $products .= "<tr class='bg-odd'><td>{$whs}</td><td></td><td> </td><td> </td><td> </td><td><input type=text size=4 name=discs[] value='0'> OR <input type=text size=4 name=discps[] value='0' maxlength=5>%</td><td>" . CUR . " 0.00</td><td></td></tr>";
    }
    /* -- End Listeners -- */
    $products .= "</table>";
    /* --- End Products Display --- */
    /* --- Start Some calculations --- */
    # the SUBOTAL !!!!!!!!!
    $SUBTOT = sprint($inv['subtot']);
    # Calculate tradediscm
    if ($inv['traddisc'] > 0) {
        $traddiscm = sprint($inv['traddisc'] / 100 * $SUBTOT);
    } else {
        $traddiscm = "0.00";
    }
    $VATP = TAX_VAT;
    # Calculate subtotal
    $SUBTOT = sprint($inv['subtot']);
    $VAT = sprint($inv['vat']);
    $TOTAL = sprint($inv['total']);
    $inv['delchrg'] = sprint($inv['delchrg']);
    /* --- End Some calculations --- */
    /*--- Start checks --- */
    # check only if the customer is selected
    if (isset($cusnum)) {
        db_connect();
        # check credit limit (inclide unpaid invoices)
        $sql = "SELECT sum(balance) FROM invoices WHERE cusnum = '{$cusnum}' AND printed = 'y' AND balance <> 0 AND div = '" . USER_DIV . "'";
        $rslt = db_exec($sql);
        $bal = pg_fetch_array($rslt);
        $credbal = $bal['sum'];
        #check againg credit limit
        if ($TOTAL + $credbal > $cust['credlimit']) {
            $error .= "<li class=err>Warning : Customers Credit limit of <b>" . CUR . " {$cust['credlimit']}</b> has been exceeded";
        }
        $avcred = $cust['credlimit'] - $credbal;
    } else {
        $avcred = "0.00";
    }
    /*--- Start checks --- */
    /* -- Final Layout -- */
    $details = "<center><h3>Edit Invoice</h3>\n\t<form action='" . SELF . "' method=post name=form>\n\t<input type=hidden name=key value=update>\n\t<input type=hidden name=invid value='{$invid}'>\n\t<input type=hidden name=stkerr value='{$stkerr}'>\n\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' border=0 width=95%>\n \t<tr><td valign=top>\n\t\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' border=0>\n\t\t\t<tr><th colspan=2> Customer Details </th></tr>\n\t\t\t<tr class='bg-odd'><td>Department</td><td valign=center>{$dept['deptname']}</td></tr>\n\t\t\t<tr class='bg-even'><td>Customer</td><td valign=center>{$customers}</td></tr>\n\t\t\t<tr class='bg-odd'><td valign=top>Customer Address</td><td valign=center>" . nl2br($cust['addr1']) . "</td></tr>\n\t\t\t<tr class='bg-even'><td>Customer Order number</td><td valign=center><input type=text size=10 name=cordno value='{$inv['cordno']}'></td></tr>\n\t\t\t<tr class='bg-odd'><td>Customer Vat Number</td><td>{$cust['vatnum']}</td></tr>\n\t\t</table>\n\t</td><td valign=top align=right>\n\t\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' border=0>\n\t\t\t<tr><th colspan=2> Invoice Details </th></tr>\n\t\t\t<tr class='bg-even'><td>Invoice No.</td><td valign=center>TI {$inv['invid']}</td></tr>\n\t\t\t<tr class='bg-odd'><td>Sales Order No.</td><td valign=center><input type=text size=5 name=ordno value='{$inv['ordno']}'></td></tr>\n\t\t\t<tr class='bg-even'><td>VAT Inclusive</td><td valign=center>Yes <input type=radio size=7 name=chrgvat value='inc' {$chin}> No<input type=radio size=7 name=chrgvat value='exc' {$chex}> No Vat<input type=radio size=7 name=chrgvat value='nov' {$chno}></td></tr>\n\t\t\t<tr class='bg-odd'><td>Terms</td><td valign=center>{$termssel} Days</td></tr>\n\t\t\t<tr class='bg-even'><td>Sales Person</td><td valign=center>{$salesps}</td></tr>\n\t\t\t<tr class='bg-odd'><td>Invoice Date</td><td valign=center><input type=text size=2 name=oday maxlength=2 value='{$oday}'>-<input type=text size=2 name=omon maxlength=2 value='{$omon}'>-<input type=text size=4 name=oyear maxlength=4 value='{$oyear}'> DD-MM-YYYY</td></tr>\n\t\t\t<tr class='bg-even'><td>Available Credit</td><td>" . CUR . " {$avcred}</td></tr>\n\t\t\t<tr class='bg-odd'><td>Trade Discount</td><td valign=center><input type=text size=5 name=traddisc value='{$inv['traddisc']}'>%</td></tr>\n\t\t\t<tr class='bg-even'><td>Delivery Charge</td><td valign=center><input type=text size=7 name=delchrg value='{$inv['delchrg']}'></td></tr>\n\t\t</table>\n\t</td></tr>\n\t<tr><td><br></td></tr>\n\t<tr><td colspan=2>{$products}</td></tr>\n\t<tr><td>\n\t\t<p>\n\t\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t\t\t<tr><th width=25%>Quick Links</th><th width=25%>Comments</th><td rowspan=5 valign=top width=50%>{$error}</td></tr>\n\t\t\t<tr><td class='bg-odd'><a href='cust-credit-stockinv.php'>New Invoice</a><td class='bg-odd' rowspan=4 align=center valign=top><textarea name=comm rows=4 cols=20>{$inv['comm']}</textarea></td></tr>\n\t\t\t<tr class='bg-odd'><td><a href='invoice-view.php'>View Invoices</a></td></tr>\n\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t</table>\n\t</td><td align=right>\n\t\t<table cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "' border=0 width=100%>\n\t\t\t<tr class='bg-odd'><td>SUBTOTAL</td><td align=right>" . CUR . " <input type=hidden name=SUBTOT value='{$SUBTOT}'>{$SUBTOT}</td></tr>\n\t\t\t<tr class='bg-even'><td>Trade Discount</td><td align=right>" . CUR . " {$traddiscm}</td></tr>\n\t\t\t<tr class='bg-odd'><td>Delivery Charge</td><td align=right>" . CUR . " {$inv['delchrg']}</td></tr>\n\t\t\t<tr class='bg-even'><td><b>VAT @ {$VATP}%</b></td><td align=right>" . CUR . " {$VAT}</td></tr>\n\t\t\t<tr class='bg-odd'><th>GRAND TOTAL</th><td align=right>" . CUR . " {$TOTAL}</td></tr>\n\t\t</table>\n\t</td></tr>\n\t<tr><td align=right><input type=button value='&laquo Back' onClick='javascript:history.back()'> | <input name=diffwhBtn type=submit value='Different Store'> | <input name=addprodBtn type=submit value='Add Product'> | <input type=submit name='saveBtn' value='Save'> </td><td> | <input type=submit name='upBtn' value='Update'>{$done}</td></tr>\n\t</table></form>\n\t</center>";
    return $details;
}
function details($_POST, $error = "")
{
    # Get vars
    extract($_POST);
    # validate input
    require_lib("validate");
    $v = new validate();
    if (isset($invid)) {
        $v->isOk($invid, "num", 1, 20, "Invalid invoice number.");
    }
    if (isset($deptid)) {
        $v->isOk($deptid, "num", 1, 20, "Invalid department number.");
    }
    if (isset($letters)) {
        $v->isOk($letters, "string", 0, 5, "Invalid First 3 Letters.");
    }
    # display errors, if any
    if ($v->isError()) {
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $error .= "<li class='err'>{$e['msg']}</li>";
        }
        $confirm .= "{$error}<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirm;
    }
    if (!isset($deptid)) {
        $deptid = 0;
    } else {
        if (isset($invid)) {
            db_conn("cubit");
            $sql = "UPDATE rec_invoices SET deptid='{$deptid}' WHERE invid='{$invid}' AND deptid<>'{$deptid}'";
            db_exec($sql) or errDie("Error updating invoice department.");
        }
    }
    if (!isset($invid)) {
        $invid = create_dummy($deptid);
        $stkerr = "0,0";
    }
    if (!isset($done)) {
        $done = "";
    }
    if (!isset($stkerr)) {
        $stkerr = "0,0";
    }
    # Get invoice info
    db_connect();
    $sql = "SELECT * FROM rec_invoices WHERE invid = '{$invid}' AND div = '" . USER_DIV . "'";
    $invRslt = db_exec($sql) or errDie("Unable to get invoice information");
    if (pg_numrows($invRslt) < 1) {
        return "<li class='err'>Invoice Not Found</li>";
    }
    $inv = pg_fetch_array($invRslt);
    # Get department
    db_conn("exten");
    $sql = "SELECT * FROM departments WHERE deptid = '{$inv['deptid']}' AND div = '" . USER_DIV . "'";
    $deptRslt = db_exec($sql);
    if (pg_numrows($deptRslt) < 1) {
        $dept['deptname'] = "<li class='err'>Department not Found.</li>";
    } else {
        $dept = pg_fetch_array($deptRslt);
    }
    # Get selected Customer info
    if (isset($letters)) {
        db_connect();
        $sql = "SELECT * FROM customers WHERE cusnum = '{$inv['cusnum']}' AND div = '" . USER_DIV . "'";
        $custRslt = db_exec($sql) or errDie("Unable to view customer");
        if (pg_numrows($custRslt) < 1) {
            db_connect();
            if ($inv['deptid'] == 0) {
                $searchdept = "";
            } else {
                $searchdept = "deptid = '{$inv['deptid']}' AND ";
            }
            # Query server for customer info
            $sql = "\n\t\t\t\tSELECT * FROM customers \n\t\t\t\tWHERE {$searchdept} location != 'int' AND lower(surname) LIKE lower('{$letters}%') AND blocked != 'yes' AND div = '" . USER_DIV . "' \n\t\t\t\tORDER BY surname";
            $custRslt = db_exec($sql) or errDie("Unable to view customers");
            if (pg_numrows($custRslt) < 1) {
                $ajax_err = "<li class='err'>No customer names starting with <b>{$letters}</b> in database.</li>";
                //return view_err($_POST, $err);
            } else {
                $customers = "<select name='cusnum' onChange='javascript:document.form.submit();'>";
                $customers .= "<option value='-S' selected>Select Customer</option>";
                while ($cust = pg_fetch_array($custRslt)) {
                    $customers .= "<option value='{$cust['cusnum']}'>{$cust['cusname']} {$cust['surname']}</option>";
                }
                $customers .= "</select>";
            }
            # Take care of the unset vars
            $cust['addr1'] = "";
            $cust['cusnum'] = "";
            $cust['vatnum'] = "";
            $cust['accno'] = "";
        } else {
            $cust = pg_fetch_array($custRslt);
            $sql = "SELECT * FROM customers WHERE deptid = '{$inv['deptid']}' AND location != 'int' AND lower(surname) LIKE lower('{$letters}%') AND blocked != 'yes' AND div = '" . USER_DIV . "' ORDER BY surname";
            $cusRslt = db_exec($sql) or errDie("Unable to view customers");
            # Moarn if customer account has been blocked
            if ($cust['blocked'] == 'yes') {
                $error .= "<li class='err'>Error : Selected customer account has been blocked.</li>";
            }
            // $customers = "<input type=hidden name=cusnum value='$cust[cusnum]'>$cust[cusname]  $cust[surname]";
            $cusnum = $cust['cusnum'];
            $customers = "<select name='cusnum' onChange='javascript:document.form.submit();'>";
            // $customers .= "<option value='-S' selected>Select Customer</option>";
            while ($cus = pg_fetch_array($cusRslt)) {
                $sel = "";
                if ($cust['cusnum'] == $cus['cusnum']) {
                    $sel = "selected";
                }
                $customers .= "<option value='{$cus['cusnum']}' {$sel}>{$cus['cusname']} {$cus['surname']}</option>";
            }
            $customers .= "</select>";
        }
    }
    /* --- Start Drop Downs --- */
    # Select warehouse
    db_conn("exten");
    //	$whs = "<select name='whidss[]' onChange='javascript:document.form.submit();'>";
    $whs = "<select name='whidss[]'>";
    $sql = "SELECT * FROM warehouses WHERE div = '" . USER_DIV . "' ORDER BY whname ASC";
    $whRslt = db_exec($sql);
    if (pg_numrows($whRslt) < 1) {
        return "<li class='err'> There are no Stores found in Cubit.</li>";
    } else {
        $whs .= "<option value='-S' disabled selected>Select Store</option>";
        while ($wh = pg_fetch_array($whRslt)) {
            if (!user_in_store_team($wh["whid"], USER_ID)) {
                continue;
            }
            $whs .= "<option value='{$wh['whid']}'>({$wh['whno']}) {$wh['whname']}</option>";
        }
    }
    $whs .= "</select>";
    # Get sales people
    db_conn("exten");
    $sql = "SELECT * FROM salespeople WHERE div = '" . USER_DIV . "' ORDER BY salesp ASC";
    $salespRslt = db_exec($sql) or errDie("Unable to get sales people.");
    if (pg_numrows($salespRslt) < 1) {
        return "<li class='err'> There are no Sales People found in Cubit.</li>";
    } else {
        $salesps = "<select name='salespn'>";
        while ($salesp = pg_fetch_array($salespRslt)) {
            if ($salesp['salesp'] == $inv['salespn']) {
                $sel = "selected";
            } else {
                $sel = "";
            }
            $salesps .= "<option value='{$salesp['salesp']}' {$sel}>{$salesp['salesp']}</option>";
        }
        $salesps .= "</select>";
    }
    # Days drop downs
    $days = array("0" => "0", "7" => "7", "14" => "14", "30" => "30", "60" => "60", "90" => "90", "120" => "120");
    $termssel = extlib_cpsel("terms", $days, $inv['terms']);
    # Keep the charge vat option stable
    if ($inv['chrgvat'] == "inc") {
        $chin = "checked=yes";
        $chex = "";
        $chno = "";
    } elseif ($inv['chrgvat'] == "exc") {
        $chin = "";
        $chex = "checked=yes";
        $chno = "";
    } else {
        $chin = "";
        $chex = "";
        $chno = "checked=yes";
    }
    # Format date
    list($rinv_year, $rinv_month, $rinv_day) = explode("-", $inv['odate']);
    /* --- End Drop Downs --- */
    // get the ID of the first warehouse
    db_conn("exten");
    $sql = "SELECT whid FROM warehouses ORDER BY whid ASC LIMIT 1";
    $rslt = db_exec($sql) or errDie("Error reading warehouses (FWH).");
    if (pg_num_rows($rslt) > 0) {
        $FIRST_WH = pg_fetch_result($rslt, 0, 0);
    } else {
        $FIRST_WH = "-S";
    }
    /* --- Start Products Display --- */
    # Select all products
    $products = "\n\t\t<table " . TMPL_tblDflts . " width='100%'>\n\t\t\t<tr>\n\t\t\t\t<th>STORE</th>\n\t\t\t\t<th>ITEM NUMBER</th>\n\t\t\t\t<th>VAT CODE</th>\n\t\t\t\t<th>DESCRIPTION</th>\n\t\t\t\t<th>QTY</th>\n\t\t\t\t<th>UNIT PRICE</th>\n\t\t\t\t<th>UNIT DISCOUNT</th>\n\t\t\t\t<th>AMOUNT</th>\n\t\t\t\t<th>Remove</th>\n\t\t\t<tr>";
    # get selected stock in this invoice
    db_connect();
    $sql = "SELECT * FROM recinv_items  WHERE invid = '{$invid}' AND div = '" . USER_DIV . "'";
    $stkdRslt = db_exec($sql);
    $i = 0;
    $key = 0;
    while ($stkd = pg_fetch_array($stkdRslt)) {
        $stkd['account'] += 0;
        if ($stkd['account'] != 0) {
            # Keep track of selected stock amounts
            $amts[$i] = $stkd['amt'];
            $i++;
            db_conn('core');
            $Sl = "SELECT accid,topacc,accnum,accname FROM accounts WHERE acctype='I' ORDER BY accname";
            $Ri = db_exec($Sl) or errDie("Unable to get accounts.");
            $Accounts = "\n\t\t\t\t<select name='accounts[]'>\n\t\t\t\t\t<option value='0'>Select Account</option>";
            while ($ad = pg_fetch_array($Ri)) {
                if (isb($ad['accid'])) {
                    continue;
                }
                if ($ad['accid'] == $stkd['account']) {
                    $sel = "selected";
                } else {
                    $sel = "";
                }
                $Accounts .= "<option value='{$ad['accid']}' {$sel}>{$ad['accname']}</option>";
            }
            $Accounts .= "</select>";
            $sernos = "";
            # Input qty if not serialised
            $qtyin = "<input type='text' size='3' name='qtys[]' value='{$stkd['qty']}'>";
            $viewcost = "<input type='text' size='8' name='unitcost[]' value='{$stkd['unitcost']}'>";
            db_conn('cubit');
            $Sl = "SELECT * FROM vatcodes ORDER BY code";
            $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
            $Vatcodes = "\n\t\t\t\t<select name='vatcodes[]'>\n\t\t\t\t\t<option value='0'>Select</option>";
            while ($vd = pg_fetch_array($Ri)) {
                if ($stkd['vatcode'] == $vd['id']) {
                    $sel = "selected";
                } else {
                    $sel = "";
                }
                $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
            }
            $Vatcodes .= "</select>";
            # Put in product
            $products .= "\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td colspan='2'>{$Accounts}<input type='hidden' name='whids[]' value='{$stkd['whid']}'></td>\n\t\t\t\t\t<td><input type='hidden' name='stkids[]' value='{$stkd['stkid']}'>{$Vatcodes}</td>\n\t\t\t\t\t<td><input type='text' size='20' name='descriptions[]' value='{$stkd['description']}'> {$sernos}</td>\n\t\t\t\t\t<td>{$qtyin}</td>\n\t\t\t\t\t<td>{$viewcost}</td>\n\t\t\t\t\t<td><input type='hidden' name='disc[]' value='{$stkd['disc']}'><input type='hidden' name='discp[]' value='{$stkd['discp']}'></td>\n\t\t\t\t\t<td nowrap><input type='hidden' name='amt[]' value='{$stkd['amt']}'> " . CUR . " " . sprint($stkd['amt']) . "</td>\n\t\t\t\t\t<td><input type='checkbox' name='remprod[]' value='{$key}'><input type='hidden' name='SCROLL' value='yes'></td>\n\t\t\t\t</tr>";
            $key++;
        } else {
            # Keep track of selected stock amounts
            $amts[$i] = $stkd['amt'];
            $i++;
            # Get warehouse name
            db_conn("exten");
            $sql = "SELECT whname FROM warehouses WHERE whid = '{$stkd['whid']}' AND div = '" . USER_DIV . "'";
            $whRslt = db_exec($sql);
            $wh = pg_fetch_array($whRslt);
            # Get selected stock in this warehouse
            db_connect();
            $sql = "SELECT * FROM stock WHERE stkid = '{$stkd['stkid']}' AND div = '" . USER_DIV . "'";
            $stkRslt = db_exec($sql);
            $stk = pg_fetch_array($stkRslt);
            $sernos = "<input type='hidden' name='sernos[]' value='{$stkd['serno']}'>{$stkd['serno']}";
            # check permissions
            if (perm("invoice-unitcost-edit.php")) {
                $viewcost = "<input type='text' size='8' name='unitcost[]' value='{$stkd['unitcost']}'>";
            } else {
                $viewcost = "<input type='hidden' size='8' name='unitcost[]' value='{$stkd['unitcost']}'>{$stkd['unitcost']}";
            }
            db_conn('cubit');
            $Sl = "SELECT * FROM vatcodes ORDER BY code";
            $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
            $Vatcodes = "\n\t\t\t\t<select name='vatcodes[]'>\n\t\t\t\t\t<option value='0'>Select</option>";
            while ($vd = pg_fetch_array($Ri)) {
                if ($stkd['vatcode'] == $vd['id']) {
                    $sel = "selected";
                } else {
                    $sel = "";
                }
                $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
            }
            $Vatcodes .= "</select>";
            # Put in product
            $products .= "\n\t\t\t\t<input type='hidden' name='accounts[]' value='0'>\n\t\t\t\t<input type='hidden' name='descriptions[]' value=''>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td><input type='hidden' name='whids[]' value='{$stkd['whid']}'>{$wh['whname']}</td>\n\t\t\t\t\t<td><input type='hidden' name='stkids[]' value='{$stkd['stkid']}'><a href='#bottom' onclick='openwindow(\"stock-amt-det.php?stkid={$stk['stkid']}\")'>{$stk['stkcod']}</a></td>\n\t\t\t\t\t{$sernos}\n\t\t\t\t\t<td>{$Vatcodes}</td>\n\t\t\t\t\t<td>" . extlib_rstr($stk['stkdes'], 30) . "</td>\n\t\t\t\t\t<td><input type='text' size='3' name='qtys[]' value='{$stkd['qty']}'></td>\n\t\t\t\t\t<td>{$viewcost}</td>\n\t\t\t\t\t<td><input type='text' size='4' name='disc[]' value='{$stkd['disc']}'> OR <input type='text' size='4' name='discp[]' value='{$stkd['discp']}' maxlength='5'>%</td>\n\t\t\t\t\t<td nowrap><input type='hidden' name='amt[]' value='{$stkd['amt']}'> " . CUR . " " . sprint($stkd['amt']) . "</td>\n\t\t\t\t\t<td><input type='checkbox' name='remprod[]' value='{$key}'><input type='hidden' name='SCROLL' value='yes'></td>\n\t\t\t\t</tr>";
            $key++;
        }
    }
    # Look above(remprod keys)
    $keyy = $key;
    # Look above(if i = 0 then there are no products)
    if ($i == 0) {
        $done = "";
    } else {
        $SCROLL = "yes";
    }
    # check if stock warehouse was selected
    if (isset($whidss)) {
        foreach ($whidss as $key => $whid) {
            if (isset($stkidss[$key]) && $stkidss[$key] != "-S" && isset($cust['pricelist'])) {
                # skip if not selected
                if ($whid == "-S") {
                    continue;
                }
                # Get selected warehouse name
                db_conn("exten");
                $sql = "SELECT whname FROM warehouses WHERE whid = '{$whid}' AND div = '" . USER_DIV . "'";
                $whRslt = db_exec($sql);
                $wh = pg_fetch_array($whRslt);
                # Get selected stock in this warehouse
                db_connect();
                $sql = "SELECT * FROM stock WHERE stkid = '{$stkidss[$key]}' AND div = '" . USER_DIV . "' ORDER BY stkcod ASC";
                $stkRslt = db_exec($sql);
                $stk = pg_fetch_array($stkRslt);
                $sernos = "<input type='hidden' name='sernos[]' value=''>";
                # Get price from price list if it is set
                if (isset($cust['pricelist'])) {
                    # get selected stock in this warehouse
                    db_conn("exten");
                    $sql = "SELECT price FROM plist_prices WHERE listid = '{$cust['pricelist']}' AND stkid = '{$stk['stkid']}' AND div = '" . USER_DIV . "'";
                    $plRslt = db_exec($sql);
                    if (pg_numrows($plRslt) > 0) {
                        $pl = pg_fetch_array($plRslt);
                        $stk['selamt'] = $pl['price'];
                    }
                }
                /* -- Start Some Checks -- */
                # check if they are selling too much
                if ($stk['units'] - $stk['alloc'] < $qtyss[$key]) {
                    if (!in_array($stk['stkid'], explode(",", $stkerr))) {
                        if ($stk['type'] != 'lab') {
                            $stkerr .= ",{$stk['stkid']}";
                            $error .= "<li class='err'>Warning :  Item number <b>{$stk['stkcod']}</b> does not have enough items available.</li>";
                        }
                    }
                }
                /* -- End Some Checks -- */
                # Calculate the Discount discount
                if ($discs[$key] < 1) {
                    if ($discps[$key] > 0) {
                        $discs[$key] = round($discps[$key] / 100 * $stk['selamt'], 2);
                    }
                } else {
                    $discps[$key] = round($discs[$key] * 100 / $stk['selamt'], 2);
                }
                # Calculate amount
                $amt[$key] = $qtyss[$key] * ($stk['selamt'] - $discs[$key]);
                $stk['selamt'] = sprint($stk['selamt']);
                # Check permissions
                if (perm("invoice-unitcost-edit.php")) {
                    $viewcost = "<input type='text' size='8' name='unitcost[]' value='{$stk['selamt']}'>";
                } else {
                    $viewcost = "<input type='hidden' size='8' name='unitcost[]' value='{$stk['selamt']}'>{$stk['selamt']}";
                }
                db_conn('cubit');
                $Sl = "SELECT * FROM vatcodes ORDER BY code";
                $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
                $Vatcodes = "\n\t\t\t\t\t<select name='vatcodes[]'>\n\t\t\t\t\t\t<option value='0'>Select</option>";
                while ($vd = pg_fetch_array($Ri)) {
                    if ($stk['vatcode'] == $vd['id']) {
                        $sel = "selected";
                    } else {
                        $sel = "";
                    }
                    $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
                }
                $Vatcodes .= "</select>";
                $amt[$key] = sprint($amt[$key]);
                # Put in selected warehouse and stock
                $products .= "\n\t\t\t\t\t<input type='hidden' name='accounts[]' value='0'>\n\t\t\t\t\t<input type='hidden' name='descriptions[]' value=''>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td><input type='hidden' name='whids[]' value='{$whid}'>{$wh['whname']}</td>\n\t\t\t\t\t\t<td><input type='hidden' name='stkids[]' value='{$stk['stkid']}'><a href='#bottom' onclick='openwindow(\"stock-amt-det.php?stkid={$stk['stkid']}\")'>{$stk['stkcod']}</a></td>\n\t\t\t\t\t\t{$sernos}\n\t\t\t\t\t\t<td>{$Vatcodes}</td>\n\t\t\t\t\t\t<td>" . extlib_rstr($stk['stkdes'], 30) . "</td>\n\t\t\t\t\t\t<td><input type='text' size='3' name='qtys[]' value='{$qtyss[$key]}'></td>\n\t\t\t\t\t\t<td>{$viewcost}</td>\n\t\t\t\t\t\t<td><input type='text' size='4' name='disc[]' value='{$discs[$key]}'> OR <input type='text' size='4' name='discp[]' value='{$discps[$key]}' maxlength='5'>%</td>\n\t\t\t\t\t\t<td nowrap><input type='hidden' name='amt[]' value='{$amt[$key]}'> " . CUR . " {$amt[$key]}</td>\n\t\t\t\t\t\t<td><input type='checkbox' name='remprod[]' value='{$keyy}'></td>\n\t\t\t\t\t</tr>";
                $keyy++;
            } elseif (isset($accountss[$key]) && $accountss[$key] != "0" && isset($cust['pricelist'])) {
                db_conn('core');
                $Sl = "SELECT * FROM accounts WHERE accid='{$accountss[$key]}'";
                $Ri = db_exec($Sl) or errDie("Unable to get account data.");
                if (pg_num_rows($Ri) < 1) {
                    return "invalid.";
                }
                $ad = pg_fetch_array($Ri);
                # Calculate amount
                $amt[$key] = sprint($qtyss[$key] * $unitcosts[$key]);
                # Input qty if not serialised
                $qtyin = "<input type='text' size='3' name='qtys[]' value='{$qtyss[$key]}'>";
                # Check permissions
                $viewcost = "<input type='text' size='8' name='unitcost[]' value='{$unitcosts[$key]}'>";
                db_conn('cubit');
                $Sl = "SELECT * FROM vatcodes ORDER BY code";
                $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
                $Vatcodes = "\n\t\t\t\t\t<select name='vatcodes[]'>\n\t\t\t\t\t\t<option value='0'>Select</option>";
                while ($vd = pg_fetch_array($Ri)) {
                    if ($vatcodess[$key] == $vd['id']) {
                        $sel = "selected";
                    } else {
                        $sel = "";
                    }
                    $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
                }
                $Vatcodes .= "</select>";
                # Put in selected warehouse and stock
                $products .= "\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td colspan='2'>{$ad['accname']}<input type='hidden' name='accounts[]' value='{$accountss[$key]}'><input type='hidden' name='whids[]' value='0'></td>\n\t\t\t\t\t\t<td>{$Vatcodes}<input type='hidden' name='stkids[]' value='0'></td>\n\t\t\t\t\t\t<td><input type='text' size='20' name='descriptions[]' value='{$descriptionss[$key]}'></td>\n\t\t\t\t\t\t<td>{$qtyin}</td>\n\t\t\t\t\t\t<td>{$viewcost}</td>\n\t\t\t\t\t\t<td><input type='hidden' name='disc[]' value='0'><input type='hidden' name='discp[]' value='0'></td>\n\t\t\t\t\t\t<td nowrap><input type='hidden' name='amt[]' value='{$amt[$key]}'> " . CUR . " {$amt[$key]}</td>\n\t\t\t\t\t\t<td><input type='checkbox' name='remprod[]' value='{$keyy}'></td>\n\t\t\t\t\t</tr>";
                $keyy++;
            } else {
                if (!isset($diffwhBtn)) {
                    # skip if not selected
                    if ($whid == "-S") {
                        continue;
                    }
                    if (!isset($addnon)) {
                        # get warehouse name
                        db_conn("exten");
                        $sql = "SELECT whname FROM warehouses WHERE whid = '{$whid}' AND div = '" . USER_DIV . "'";
                        $whRslt = db_exec($sql);
                        $wh = pg_fetch_array($whRslt);
                        if (isset($ria) && $ria != "") {
                            $len = strlen($ria);
                            if ($ria == "Show All") {
                                $Wh = "";
                                $ria = "";
                            } else {
                                $Wh = "AND (lower(stkdes) LIKE lower('%{$ria}%')) OR (lower(stkcod) LIKE lower('%{$ria}%'))";
                                //								$Wh = "AND lower(substr(stkcod,1,'$len'))=lower('$ria')";
                            }
                        } else {
                            $Wh = "AND FALSE";
                            $ria = "";
                        }
                        # get stock on this warehouse
                        db_connect();
                        $sql = "SELECT * FROM stock WHERE whid = '{$whid}' AND blocked = 'n' AND div = '" . USER_DIV . "' AND serd = 'no' {$Wh} ORDER BY stkcod ASC";
                        $stkRslt = db_exec($sql) or errDie("Unable to retrieve stocks from database.");
                        if (pg_numrows($stkRslt) < 1) {
                            $error .= "<li class='err'>There are no stock items in the selected warehouse.</li>";
                            continue;
                        }
                        if (pg_numrows($stkRslt) == 1) {
                            $ex = "selected";
                        } else {
                            $ex = "";
                        }
                        if (!isset($sel_frm) || $sel_frm == "stkcod") {
                            $cods = "<select class='width : 15'name='stkidss[]' onChange='javascript:document.form.submit();'>";
                            $cods .= "<option value='-S' disabled selected>Select Number</option>";
                            $count = 0;
                            while ($stk = pg_fetch_array($stkRslt)) {
                                $cods .= "<option value='{$stk['stkid']}'>{$stk['stkcod']} (" . sprint3($stk['units'] - $stk['alloc']) . ")</option>";
                            }
                            $cods .= "</select> ";
                            $descs = "";
                        } else {
                            $descs = "<select class='width : 15'name='stkidss[]' onChange='javascript:document.form.submit();'>";
                            $descs .= "<option value='-S' disabled selected>Select Description</option>";
                            $count = 0;
                            while ($stk = pg_fetch_array($stkRslt)) {
                                $descs .= "<option value='{$stk['stkid']}'>{$stk['stkdes']} (" . sprint3($stk['units'] - $stk['alloc']) . ")</option>";
                            }
                            $descs .= "</select> ";
                            $cods = "";
                        }
                        # put in drop down and warehouse
                        $products .= "\n\t\t\t\t\t\t\t<input type='hidden' name='accountss[]' value='0'>\n\t\t\t\t\t\t\t<input type='hidden' name='descriptionss[]' value=''>\n\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t<td><input type='hidden' name='whidss[]' value='{$whid}'>{$wh['whname']}</td>\n\t\t\t\t\t\t\t\t<td>{$cods}</td>\n\t\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t\t<td>{$descs}</td>\n\t\t\t\t\t\t\t\t<td><input type='text' size='3' name='qtyss[]'  value='1'></td>\n\t\t\t\t\t\t\t\t<td> </td>\n\t\t\t\t\t\t\t\t<td><input type='text' size='4' name='discs[]' value='0'> OR <input type='text' size='4' name='discps[]' value='0' maxlength='5'>%</td>\n\t\t\t\t\t\t\t\t<td><input type='hidden' name='amts[]' value='0.00'>" . CUR . " 0.00</td>\n\t\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t</tr>";
                    } else {
                        db_conn('core');
                        $Sl = "SELECT accid,topacc,accnum,accname FROM accounts WHERE acctype='I' ORDER BY accname";
                        $Ri = db_exec($Sl) or errDie("Unable to get accounts.");
                        $Accounts = "\n\t\t\t\t\t\t\t<select name='accountss[]'  onChange='javascript:document.form.submit();'>\n\t\t\t\t\t\t\t\t<option value='0'>Select Account</option>";
                        while ($ad = pg_fetch_array($Ri)) {
                            if (isb($ad['accid'])) {
                                continue;
                            }
                            $Accounts .= "<option value={$ad['accid']}>{$ad['accname']}</option>";
                        }
                        $Accounts .= "</select>";
                        db_conn('cubit');
                        $Sl = "SELECT * FROM vatcodes ORDER BY code";
                        $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
                        $Vatcodes = "\n\t\t\t\t\t\t\t<select name='vatcodess[]'>\n\t\t\t\t\t\t\t\t<option value='0'>Select</option>";
                        while ($vd = pg_fetch_array($Ri)) {
                            if ($vd['del'] == "Yes") {
                                $sel = "selected";
                            } else {
                                $sel = "";
                            }
                            $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
                        }
                        $Vatcodes .= "</select>";
                        //<input type='hidden' name='stkidss[]' value=''>
                        $products .= "\n\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t<td colspan='2'>{$Accounts}<input type='hidden' name='whidss[]' value='{$FIRST_WH}'></td>\n\t\t\t\t\t\t\t\t<td>{$Vatcodes}</td>\n\t\t\t\t\t\t\t\t<td><input type='text' size='20' name='descriptionss[]'></td>\n\t\t\t\t\t\t\t\t<td><input type='text' size='3' name='qtyss[]' value='1'></td>\n\t\t\t\t\t\t\t\t<td><input type='text' name='unitcosts[]' size='7'></td>\n\t\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t\t<td>" . CUR . " 0.00</td>\n\t\t\t\t\t\t\t\t<td><input type='hidden' name='discs[]' value='0'><input type='hidden' name='discps[]' value='0' ></td>\n\t\t\t\t\t\t\t</tr>";
                    }
                }
            }
        }
    } else {
        if (!(isset($diffwhBtn) || isset($addnon))) {
            # check if setting exists
            db_connect();
            $sql = "SELECT value FROM set WHERE label = 'DEF_WH' AND div = '" . USER_DIV . "'";
            $Rslt = db_exec($sql) or errDie("Unable to check database for existing settings.");
            if (pg_numrows($Rslt) > 0) {
                $set = pg_fetch_array($Rslt);
                $whid = $set['value'];
                if (isset($wtd) && $wtd != 0) {
                    $whid = $wtd;
                }
                # get selected warehouse name
                db_conn("exten");
                $sql = "SELECT whname FROM warehouses WHERE whid = '{$whid}' AND div = '" . USER_DIV . "'";
                $whRslt = db_exec($sql);
                $wh = pg_fetch_array($whRslt);
                if (isset($ria) && $ria != "") {
                    $len = strlen($ria);
                    if ($ria == "Show All") {
                        $Wh = "";
                        $ria = "";
                    } else {
                        $Wh = "AND lower(substr(stkcod,1,'{$len}'))=lower('{$ria}')";
                        $ria = "";
                    }
                } else {
                    $Wh = "";
                    $ria = "";
                }
                # get stock on this warehouse
                db_connect();
                $sql = "SELECT * FROM stock WHERE whid = '{$whid}' AND blocked = 'n' AND div = '" . USER_DIV . "' AND serd = 'no' {$Wh} ORDER BY stkcod ASC";
                $stkRslt = db_exec($sql) or errDie("Unable to retrieve stocks from database.");
                if (pg_numrows($stkRslt) < 1) {
                    if (!isset($err)) {
                        $err = "";
                    }
                    $err .= "<li>There are no stock items in the selected store.</li>";
                    //ontinue;
                }
                $stks = "<select name='stkidss[]' onChange='javascript:document.form.submit();'>";
                $stks .= "<option value='-S' disabled selected>Select Number</option>";
                $count = 0;
                while ($stk = pg_fetch_array($stkRslt)) {
                    $stks .= "<option value='{$stk['stkid']}'>{$stk['stkcod']} (" . sprint3($stk['units'] - $stk['alloc']) . ")</option>";
                }
                $stks .= "</select> ";
                $products .= "\n\t\t\t\t\t<input type='hidden' name='descriptionss[]' value=''>\n\t\t\t\t\t<input type='hidden' name='vatcodess[]' value=''>\n\t\t\t\t\t<input type='hidden' name='accountss[]' value='0'>\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td><input type='hidden' name='whidss[]' value='{$whid}'>{$wh['whname']}</td>\n\t\t\t\t\t\t<td>{$stks}</td>\n\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t<td><input type='hidden' size='3' name='qtyss[]' value='1'>1</td>\n\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t<td><input type='text' size='4' name='discs[]' value='0'> OR <input type='text' size='4' name='discps[]' value='0' maxlength='5'>%</td>\n\t\t\t\t\t\t<td>" . CUR . " 0.00</td>\n\t\t\t\t\t\t<td></td>\n\t\t\t\t\t</tr>";
            } else {
                $products .= "\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>{$whs}</td>\n\t\t\t\t\t\t<td> </td>\n\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t<td> </td>\n\t\t\t\t\t\t<td> </td>\n\t\t\t\t\t\t<td><input type='text' size='4' name='discs[]' value='0'> OR <input type='text' size='4' name='discps[]' value='0' maxlength='5'>%</td>\n\t\t\t\t\t\t<td>" . CUR . " 0.00</td>\n\t\t\t\t\t\t<td></td>\n\t\t\t\t\t</tr>";
            }
        } else {
            if (isset($addnon)) {
                db_conn('core');
                $Sl = "SELECT accid,topacc,accnum,accname FROM accounts WHERE acctype='I' ORDER BY accname";
                $Ri = db_exec($Sl) or errDie("Unable to get accounts.");
                $Accounts = "\n\t\t\t\t<select name='accountss[]'>\n\t\t\t\t\t<option value='0'>Select Account</option>";
                while ($ad = pg_fetch_array($Ri)) {
                    if (isb($ad['accid'])) {
                        continue;
                    }
                    $Accounts .= "<option value='{$ad['accid']}'>{$ad['accname']}</option>";
                }
                $Accounts .= "</select>";
                db_conn('cubit');
                $Sl = "SELECT * FROM vatcodes ORDER BY code";
                $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
                $Vatcodes = "\n\t\t\t\t<select name='vatcodess[]'>\n\t\t\t\t\t<option value='0'>Select</option>";
                while ($vd = pg_fetch_array($Ri)) {
                    if ($vd['del'] == "Yes") {
                        $sel = "selected";
                    } else {
                        $sel = "";
                    }
                    $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
                }
                $Vatcodes .= "</select>";
                $products .= "\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td colspan='2'>{$Accounts}<input type='hidden' name='whidss[]' value='{$FIRST_WH}'></td>\n\t\t\t\t\t<input type='hidden' name='stkidss[]' value='-S'>\n\t\t\t\t\t<td>{$Vatcodes}</td>\n\t\t\t\t\t<td><input type='text' size='20' name='descriptionss[]'></td>\n\t\t\t\t\t<td><input type='text' size='3' name='qtyss[]' value='1'></td>\n\t\t\t\t\t<td><input type='text' name='unitcosts[]' size='7'></td>\n\t\t\t\t\t<td></td>\n\t\t\t\t\t<td>" . CUR . " 0.00</td>\n\t\t\t\t\t<td><input type='hidden' name='discs[]' value='0'><input type='hidden' name='discps[]' value='0'></td>\n\t\t\t\t</tr>";
            }
        }
    }
    /* -- start Listeners -- */
    if (isset($diffwhBtn)) {
        $products .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>{$whs}</td>\n\t\t\t\t<td> </td>\n\t\t\t\t<td></td>\n\t\t\t\t<td> </td>\n\t\t\t\t<td> </td>\n\t\t\t\t<td><input type='text' size='4' name='discs[]' value='0'> OR <input type='text' size='4' name='discps[]' value='0' maxlength='5'>%</td>\n\t\t\t\t<td>" . CUR . " 0.00</td>\n\t\t\t\t<td></td>\n\t\t\t</tr>";
    }
    /* -- End Listeners -- */
    $products .= "</table>";
    /* --- End Products Display --- */
    /* --- Start Some calculations --- */
    # Calculate subtotal
    $SUBTOT = sprint($inv['subtot']);
    # Calculate tradediscm
    if ($inv['traddisc'] > 0) {
        $traddiscm = sprint($inv['traddisc'] / 100 * ($SUBTOT + $inv['delchrg']));
    } else {
        $traddiscm = "0.00";
    }
    $VATP = TAX_VAT;
    # Calculate subtotal
    $SUBTOT = sprint($inv['subtot']);
    $VAT = sprint($inv['vat']);
    $TOTAL = sprint($inv['total']);
    $inv['delchrg'] = sprint($inv['delchrg']);
    /* --- End Some calculations --- */
    /*--- Start checks --- */
    # check only if the customer is selected
    if (isset($cusnum) && $cusnum != "-S") {
        #check againg credit limit
        if ($TOTAL + $cust['balance'] > $cust['credlimit']) {
            $error .= "<li class='err'>Warning : Customers Credit limit of <b>" . CUR . " " . sprint($cust["credlimit"]) . "</b> has been exceeded";
        }
        $avcred = $cust['credlimit'] - $cust['balance'];
    } else {
        $avcred = "0.00";
    }
    $inv['delvat'] += 0;
    if ($inv['delvat'] == 0) {
        $Sl = "SELECT * FROM vatcodes WHERE del='Yes'";
        $Ri = db_exec($Sl) or errDie("Unable to get data.");
        $vd = pg_fetch_array($Ri);
        $inv['delvat'] = $vd['id'];
    }
    db_conn('cubit');
    $Sl = "SELECT * FROM vatcodes ORDER BY code";
    $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
    $Vatcodes = "\n\t\t<select name='delvat'>\n\t\t\t<option value='0'>Select</option>";
    while ($vd = pg_fetch_array($Ri)) {
        if ($vd['id'] == $inv['delvat']) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
    }
    $Vatcodes .= "</select>";
    db_conn('cubit');
    $Sl = "SELECT * FROM costcenters";
    $Ri = db_exec($Sl);
    if (pg_num_rows($Ri) > 0) {
        $ctd = "\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t<tr>\n\t\t\t\t\t<th>Cost Center</th>\n\t\t\t\t\t<th>Percentage</th>\n\t\t\t\t</tr>";
        $i = 0;
        while ($data = pg_fetch_array($Ri)) {
            $Sl = "SELECT * FROM invc WHERE inv='{$invid}' AND cid='{$data['ccid']}'";
            $Rq = db_exec($Sl);
            $cd = pg_fetch_array($Rq);
            $ctd .= "\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>{$data['centername']}</td>\n\t\t\t\t\t<td><input type='text' name='ct[{$data['ccid']}]' size='5' value='{$cd['amount']}'>%</td>\n\t\t\t\t</tr>";
            $i++;
        }
        $ctd .= "</table>";
    } else {
        $ctd = "";
    }
    // Retrieve default comments from Cubit
    if (empty($inv["comm"])) {
        db_conn("cubit");
        $sql = "SELECT value FROM settings WHERE constant='DEFAULT_COMMENTS'";
        $commRslt = db_exec($sql) or errDie("Unable to retrieve default comment from Cubit.");
        $comment = base64_decode(pg_fetch_result($commRslt, 0));
    } else {
        $comment = $inv["comm"];
    }
    if (!isset($showvat)) {
        $showvat = TRUE;
    }
    if ($showvat == TRUE) {
        $vat14 = AT14;
    } else {
        $vat14 = "";
    }
    // Which display method was selected
    if (isset($sel_frm) && $sel_frm == "stkdes") {
        $sel_frm_cod = "";
        $sel_frm_des = "checked";
    } else {
        $sel_frm_cod = "checked";
        $sel_frm_des = "";
    }
    /*--- Start checks --- */
    /* -- Final Layout -- */
    $details_begin = "\n\t\t<center>\n\t\t<h3>Recurring Invoice</h3>\n\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t\t<input type='hidden' name='key' value='update'>\n\t\t\t<input type='hidden' name='invid' value='{$invid}'>\n\t\t\t<input type='hidden' name='stkerr' value='{$stkerr}'>\n\t\t<table " . TMPL_tblDflts . " width='95%'>\n\t\t\t<tr>\n\t\t\t\t<td valign='top'>\n\t\t\t\t\t<div id='cust_selection'>";
    if (empty($ajax_err) && (isset($cusnum) || AJAX)) {
        if (isset($cusnum)) {
            $OTS_OPT = onthespot_encode(SELF, "cust_selection", "deptid={$inv['deptid']}&letters={$letters}&cusnum={$cusnum}&invid={$invid}");
            $custedit = "\n\t\t\t\t<td nowrap>\n\t\t\t\t\t<a href='javascript: popupSized(\"cust-edit.php?cusnum={$cusnum}&onthespot={$OTS_OPT}\", \"edit_cust\", 700, 630);'>\n\t\t\t\t\t\tEdit Customer Details\n\t\t\t\t\t</a>\n\t\t\t\t</td>";
        } else {
            $custedit = "";
        }
        $ajaxOut = "\n\t\t\t<input type='hidden' name='letters' value='{$letters}'>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t<tr>\n\t\t\t\t\t<th colspan='2'> Customer Details </th>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Department</td>\n\t\t\t\t\t<td valign='center'>{$dept['deptname']}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Account No.</td>\n\t\t\t\t\t<td valign='center'>{$cust['accno']}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Customer</td>\n\t\t\t\t\t<td valign='center'>{$customers}</td>\n\t\t\t\t\t{$custedit}\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td valign='top'>Customer Address</td>\n\t\t\t\t\t<td valign='center'>" . nl2br($cust['addr1']) . "</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Customer Order number</td>\n\t\t\t\t\t<td valign='center'><input type='text' size='10' name='cordno' value='{$inv['cordno']}'></td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Customer VAT Number</td>\n\t\t\t\t\t<td>{$cust['vatnum']}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<th colspan='2'>Point of Sale</th>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Barcode</td>\n\t\t\t\t\t<td><input type='text' size='13' name='bar' value=''></td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Select Using</td>\n\t\t\t\t\t<td>Stock Code<input type='radio' name='sel_frm' value='stkcod' onChange='javascript:document.form.submit();' {$sel_frm_cod}><br>Stock Description<input type='radio' name='sel_frm' value='stkdes' onChange='javascript:document.form.submit();' {$sel_frm_des}></td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "' " . ass("Type the first letters of the stock code you are looking for.") . ">\n\t\t\t\t\t<td>Stock Filter</td>\n\t\t\t\t\t<td nowrap><input type='text' size='13' name='ria' value='{$ria}'> <input type='submit' value='Search'> <input type='submit' name='ria' value='Show All'></td>\n\t\t\t\t</tr>\n\t\t\t</table>";
    } else {
        # Query server for depts
        db_conn("exten");
        $sql = "SELECT * FROM departments WHERE div = '" . USER_DIV . "' ORDER BY deptname ASC";
        $deptRslt = db_exec($sql) or errDie("Unable to view customers");
        if (pg_numrows($deptRslt) < 1) {
            return "<li class='err'>There are no Departments found in Cubit.</li>";
        } else {
            $depts = "<select id='deptid'>";
            $depts .= "<option value='0'>All Departments</option>";
            while ($dept = pg_fetch_array($deptRslt)) {
                $depts .= "<option value='{$dept['deptid']}'>{$dept['deptname']}</option>";
            }
            $depts .= "</select>";
        }
        if (!isset($ajax_err)) {
            $ajax_err = "";
        }
        $ajaxOut = "\n\t\t\t<script>\n\t\t\t\tfunction updateCustSelection() {\n\t\t\t\t\tdeptid = getObject('deptid').value;\n\t\t\t\t\tletters = getObject('letters').value;\n\t\t\t\t\tajaxRequest('" . SELF . "', 'cust_selection', AJAX_SET, 'letters='+letters+'&deptid='+deptid+'&invid={$invid}');\n\t\t\t\t}\n\t\t\t</script>\n\t\t\t{$ajax_err}\n\t\t\t<table " . TMPL_tblDflts . " width='400'>\n\t\t\t\t<tr>\n\t\t\t\t\t<th colspan='2'>New Recurring Invoice</th>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Select Department</td>\n\t\t\t\t\t<td valign='center'>{$depts}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>First Letters of customer</td>\n\t\t\t\t\t<td valign='center'><input type='text' size='5' id='letters' maxlength='5'></td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td valign='center'><input type='button' value='Update' onClick='updateCustSelection();'></td>\n\t\t\t\t</tr>\n\t\t\t</table>";
    }
    if (isset($diffwhBtn) or isset($addprodBtn) or isset($addnon) or isset($upBtn) or isset($saveBtn) or isset($ria)) {
        $jump_bot = "\n\t\t\t<script>\n\t\t\t\twindow.location.hash='bottom';\n\t\t\t</script>";
    } else {
        $jump_bot = "";
    }
    $details_end = "\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t\t<td valign='top' align='right'>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th colspan='2'> Invoice Details </th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Invoice No.</td>\n\t\t\t\t\t\t\t<td valign='center'>RI {$inv['invid']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Document Ref No.</td>\n\t\t\t\t\t\t\t<td valign='center'><input type='text' size='5' name='docref' value='{$inv['docref']}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Sales Order No.</td>\n\t\t\t\t\t\t\t<td valign='center'><input type='text' size='5' name='ordno' value='{$inv['ordno']}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>VAT Inclusive</td>\n\t\t\t\t\t\t\t<td valign='center'>Yes <input type='radio' size='7' name='chrgvat' value='inc' {$chin}> No<input type='radio' size='7' name='chrgvat' value='exc' {$chex}></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Terms</td>\n\t\t\t\t\t\t\t<td valign='center'>{$termssel} Days</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Sales Person</td>\n\t\t\t\t\t\t\t<td valign='center'>{$salesps}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Invoice Date</td>\n\t\t\t\t\t\t\t<td valign='center'>" . mkDateSelect("rinv", $rinv_year, $rinv_month, $rinv_day) . "</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Available Credit</td>\n\t\t\t\t\t\t\t<td>" . CUR . " " . sprint($avcred) . "</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Trade Discount</td>\n\t\t\t\t\t\t\t<td valign='center'><input type='text' size='5' name='traddisc' value='{$inv['traddisc']}'>%</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Delivery Charge</td>\n\t\t\t\t\t\t\t<td valign='center'><input type='text' size='7' name='delchrg' value='{$inv['delchrg']}'>{$Vatcodes}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan='2'>{$ctd}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</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 colspan='2'>{$products}</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<p>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td rowspan='2'>" . mkQuickLinks(ql("cust-credit-stockinv.php", "New Invoice"), ql("rec-invoice-view.php", "View Recurring Invoices"), ql("customers-new.php", "New Customer")) . "\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<th width='25%'>Comments</th>\n\t\t\t\t\t\t\t<td rowspan='5' valign='top' width='50%'>{$error}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td class='" . bg_class() . "' rowspan='4' align='center' valign='top'><textarea name='comm' rows='4' cols='20'>{$comment}</textarea></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td align='right' valign='top'>\n\t\t\t\t\t<table " . TMPL_tblDflts . " width='100%'>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>SUBTOTAL</td>\n\t\t\t\t\t\t\t<td align='right'>" . CUR . " <input type='hidden' name='SUBTOT' value='{$SUBTOT}'>{$SUBTOT}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Trade Discount</td>\n\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$inv['discount']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Delivery Charge</td>\n\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$inv['delivery']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td><b>VAT {$vat14}</b></td>\n\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$VAT}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<th>GRAND TOTAL</th>\n\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$TOTAL}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td align='right'><input name='diffwhBtn' type='submit' value='Different Store'> | <input name='addprodBtn' type='submit' value='Add Product'> | <input name='addnon' type='submit' value='Add Non stock Product'> | <input type='submit' name='upBtn' value='Update'> </td>\n\t\t\t\t<td> | <input type='submit' name='saveBtn' value='Save &raquo'></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t<a name='bottom'>\n\t\t</form>\n\t\t</center>\n\t\t{$jump_bot}";
    if (AJAX) {
        return $ajaxOut;
    } else {
        return "{$details_begin}{$ajaxOut}{$details_end}";
    }
}
function details($_POST, $error = "")
{
    # Get vars
    extract($_POST);
    if (!isset($button) && isset($starting)) {
        return slct();
    }
    # validate input
    require_lib("validate");
    $v = new validate();
    if (isset($invid)) {
        $v->isOk($invid, "num", 1, 20, "Invalid Non-Stock Invoice number.");
    } elseif (isset($ctyp)) {
        $val = $ctyp . "val";
        if (isset(${$val})) {
            $tval = ${$val};
            $v->isOk($tval, "num", 1, 20, "Invalid Selection.");
        }
    }
    if (isset($cusnum) && customer_overdue($cusnum)) {
        $v->addError(0, "Customer is overdue, account blocked!");
    }
    # display errors, if any
    if ($v->isError()) {
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $error .= "<li class='err'>" . $e["msg"] . "</li>";
        }
        return slct($error);
        $confirm = "{$error}<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirm;
    }
    if (!isset($invid) && isset($ctyp)) {
        $val = $ctyp . "val";
        if (!isset(${$val})) {
            ${$val} = "";
        }
        $tval = ${$val};
        if (isset($bankid)) {
            $bankid += 0;
            $acc = $bankid;
        } else {
            $acc = 0;
        }
        $invid = create_dummy(0, $ctyp, $tval, $acc);
    }
    # Get invoice info
    db_connect();
    $sql = "SELECT * FROM nons_invoices WHERE invid = '{$invid}' AND div = '" . USER_DIV . "'";
    $invRslt = db_exec($sql) or errDie("Unable to get invoice information");
    if (pg_numrows($invRslt) < 1) {
        return "<li class='err'>Invoice Not Found</li>";
    }
    $inv = pg_fetch_array($invRslt);
    # check if invoice has been printed
    if ($inv['done'] == "y") {
        $error = "<li class='err'> Error : invoice number <b>{$invid}</b> has already been printed.</li>";
        $error .= "<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $error;
    }
    /* --- Start Drop Downs --- */
    # format date
    list($ninv_year, $ninv_month, $ninv_day) = explode("-", $inv['odate']);
    # keep the charge vat option stable
    if ($inv['chrgvat'] == "yes") {
        $chy = "checked=yes";
        $chn = "";
        $chnone = "";
    } elseif ($inv['chrgvat'] == "no") {
        $chy = "";
        $chn = "checked=yes";
        $chnone = "";
    } else {
        $chy = "";
        $chn = "";
        $chnone = "checked=yes";
    }
    # Days drop downs
    $days = array("0" => "0", "7" => "7", "14" => "14", "30" => "30", "60" => "60", "90" => "90", "120" => "120");
    $termssel = extlib_cpsel("terms", $days, $inv['terms']);
    /* --- End Drop Downs --- */
    /* --- Start Products Display --- */
    # Select all products
    $products = "\n\t\t<table " . TMPL_tblDflts . " width='100%'>\n\t\t\t<tr>\n\t\t\t\t<th>DESCRIPTION</th>\n\t\t\t\t<th>QTY</th>\n\t\t\t\t<th>UNIT PRICE</th>\n\t\t\t\t<th>AMOUNT</th>\n\t\t\t\t<th>VAT Code</th>\n\t\t\t\t<th>Remove</th>\n\t\t\t<tr>";
    # get selected stock in this purchase
    db_connect();
    $sql = "SELECT * FROM nons_inv_items  WHERE invid = '{$invid}' AND div = '" . USER_DIV . "'";
    $stkdRslt = db_exec($sql);
    $i = 0;
    while ($stkd = pg_fetch_array($stkdRslt)) {
        # keep track of selected stock amounts
        $amts[$i] = $stkd['amt'];
        $stkd['amt'] = round($stkd['amt'], 2);
        $chk = "";
        if ($stkd['vatex'] == 'y') {
            $chk = "checked=yes";
        }
        db_conn('cubit');
        $Sl = "SELECT * FROM vatcodes ORDER BY code";
        $Ri = db_exec($Sl);
        $vats = "<select name='vatcodes[]'>";
        while ($vd = pg_fetch_array($Ri)) {
            if ($stkd['vatex'] == $vd['id']) {
                $sel = "selected";
            } else {
                $sel = "";
            }
            $vats .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
        }
        $vats .= "</option>";
        $Sl = "SELECT * FROM vatcodes WHERE id='{$stkd['vatex']}'";
        $Ri = db_exec($Sl);
        $vd = pg_fetch_array($Ri);
        if (TAX_VAT != $vd['vat_amount'] and $vd['vat_amount'] != "0.00") {
            $showvat = FALSE;
        }
        # put in product
        $products .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center' nowrap><input type='hidden' name='des[{$i}]' value='{$stkd['description']}'>" . nl2br($stkd['description']) . "</td>\n\t\t\t\t<td align='center'><input type='text' size='3' name='qtys[{$i}]' value='{$stkd['qty']}'></td>\n\t\t\t\t<td align='center'><input type='text' size='8' name='unitcost[{$i}]' value='{$stkd['unitcost']}'></td>\n\t\t\t\t<td><input type='hidden' name='amt[{$i}]' value='" . sprint($stkd["amt"]) . "'> " . CUR . " " . sprint($stkd["amt"]) . "</td>\n\t\t\t\t<!--<td align='center'><input type='checkbox' name='vatex[{$i}]' value='{$i}' {$chk}></td>-->\n\t\t\t\t<td align='center'>{$vats}</td>\n\t\t\t\t<td align='center'><input type='checkbox' name='remprod[{$i}]' value='{$i}'><input type='hidden' name='SCROLL' value='yes'></td>\n\t\t\t</tr>";
        $i++;
    }
    # Look above(remprod keys)
    $keyy = $i;
    # look above(if i = 0 then there are no products)
    if ($i == 0) {
        $done = "";
    }
    if (!isset($error) and strlen($error) == 0) {
        $bodydata = "";
    }
    //document.editForm.bodydata.value = editArea.document.body.innerHTML;
    //	if (isset ($bodydata) AND strlen ($bodydata) > 0){
    //print "$bodydata";
    //		$doset = "
    //			<script>
    //				editArea.document.body.innerHTML = '".strip_tags($bodydata)."';
    //			</script>";
    //	}else {
    //		$doset = "";
    //	}
    //old
    //					<td align='center'><input type='text' size='50' name='des[]' value=''></td>
    if ($i == 0 || isset($diffwhBtn)) {
        # add one
        $products .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'>\n\t\t\t\t\t<table id='tblCtrls' width='420px' height='30px' border='0' cellspacing='0' cellpadding='0' bgcolor='#D6D3CE'>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td class='tdClass'>\n\t\t\t\t\t\t\t\t<img alt='Bold' class='buttonClass' src='images/bold.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doBold()'>\n\t\t\t\t\t\t\t\t<img alt='Italic' class='buttonClass' src='images/italic.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doItalic()'>\n\t\t\t\t\t\t\t\t<img alt='Underline' class='buttonClass' src='images/underline.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doUnderline()'>\n\t\t\t\t\t\t\t\t<img alt='Left' class='buttonClass' src='images/left.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doLeft()'>\n\t\t\t\t\t\t\t\t<img alt='Center' class='buttonClass' src='images/center.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doCenter()'>\n\t\t\t\t\t\t\t\t<img alt='Right' class='buttonClass' src='images/right.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doRight()'>\n\t\t\t\t\t\t\t\t<img alt='Ordered List' class='buttonClass' src='images/ordlist.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doOrdList()'>\n\t\t\t\t\t\t\t\t<img alt='Bulleted List' class='buttonClass' src='images/bullist.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doBulList()'>\n\t\t\t\t\t\t\t\t<img alt='Horizontal Rule' class='buttonClass' src='images/rule.gif' onMouseOver='controlSelOn(this)' onMouseOut='controlSelOff(this)' onMouseDown='controlSelDown(this)' onMouseUp='controlSelUp(this)' onClick='doRule()'>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td class='tdClass' align=right>\n\t\t\t\t\t\t\t\t<select name='selSize' onChange='doSize(this.options[this.selectedIndex].value)'>\n\t\t\t\t\t\t\t\t\t<option value=''>-- Font Size --</option>\n\t\t\t\t\t\t\t\t\t<option value='1'>Very Small</option>\n\t\t\t\t\t\t\t\t\t<option value='2'>Small</option>\n\t\t\t\t\t\t\t\t\t<option value='3'>Medium</option>\n\t\t\t\t\t\t\t\t\t<option value='4'>Large</option>\n\t\t\t\t\t\t\t\t\t<option value='5'>Larger</option>\n\t\t\t\t\t\t\t\t\t<option value='6'>Very Large</option>\n\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t\t<iframe name='editArea' id='editArea' style='width: 420px; height:160px; background: #FFFFFF;'></iframe>\n\t\t\t\t\t<input type='hidden' name='bodydata' value=''>\n\t\t\t\t\t<input type='hidden' name='counter' value='{$i}'>\n\t\t\t\t</td>\n\t\t\t\t<td align='center'><input type='text' size='3' name='qtys[{$i}]' value='1'></td>\n\t\t\t\t<td align='center'><input type='text' size='8' name='unitcost[{$i}]'></td>\n\t\t\t\t<td>" . CUR . " 0.00</td>\n\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t<td>&nbsp;</td>\n\t\t\t</tr>";
    }
    $products .= "</table>";
    /* --- End Products Display --- */
    /* --- Start Some calculations --- */
    # Get subtotal
    $SUBTOT = $inv['subtot'];
    # Get Total
    $TOTAL = sprint($inv['total']);
    # Get vat
    $VAT = sprint($inv['vat']);
    /* --- End Some calculations --- */
    db_conn('cubit');
    if ($inv['ctyp'] == 's') {
        $sql = "SELECT * FROM customers WHERE cusnum = '{$inv['tval']}' AND div = '" . USER_DIV . "'";
        $custRslt = db_exec($sql) or errDie("Unable to view customer");
        $cust = pg_fetch_array($custRslt);
        if (!empty($cust["cusname"])) {
            $cn = "{$cust['cusname']} {$cust['surname']}";
        } else {
            $cn = "{$cust['surname']}";
        }
        $details = "\n\t\t\t<tr>\n\t\t\t\t<th colspan='2'> Customer Details </th>\n\t\t\t</tr>\n\t\t\t<input type='hidden' name='cusnum' value='{$cust['cusnum']}' />\n\t\t\t<input type='hidden' name='cusname' value='{$cn}'>\n\t\t\t<input type='hidden' name='cusaddr' value='{$cust['addr1']}'>\n\t\t\t<input type='hidden' name='cusvatno' value='{$cust['vatnum']}'>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Customer</td>\n\t\t\t\t<td valign='center'>{$cust['cusname']} {$cust['surname']}</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Customer Address</td>\n\t\t\t\t<td valign='center'><pre>{$cust['addr1']}</pre></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Customer VAT Number</td>\n\t\t\t\t<td valign='center'>{$cust['vatnum']}</td>\n\t\t\t</tr>";
    } elseif ($inv['ctyp'] == 'c') {
        db_conn("exten");
        $sql = "SELECT * FROM departments WHERE deptid = '{$inv['tval']}'";
        $deptRslt = db_exec($sql) or errDie("Unable to view customers");
        $dept = pg_fetch_array($deptRslt);
        $details = "\n\t\t\t<tr>\n\t\t\t\t<th colspan='2'> Customer Details </th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Customer</td>\n\t\t\t\t<td valign='middle'><input type='text' name='cusname' value='{$inv['cusname']}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td valign='top'>Customer Address</td>\n\t\t\t\t<td valign='middle'><textarea name='cusaddr' cols='18' rows='3'>{$inv['cusaddr']}</textarea></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td valign='top'>Customer VAT No.</td>\n\t\t\t\t<td valign='middle'><input type='text' name='cusvatno' value='{$inv['cusvatno']}'></td>\n\t\t\t</tr>";
    } else {
        $details = "\n\t\t\t<tr>\n\t\t\t\t<th colspan='2'> Customer Details </th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Customer</td>\n\t\t\t\t<td valign='middle'><input type='text' name='cusname' value='{$inv['cusname']}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td valign='top'>Customer Address</td>\n\t\t\t\t<td valign='middle'><textarea name='cusaddr' cols='18' rows='3'>{$inv['cusaddr']}</textarea></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td valign='top'>Customer VAT No.</td>\n\t\t\t\t<td valign='middle'><input type='text' name='cusvatno' value='{$inv['cusvatno']}'></td>\n\t\t\t</tr>";
    }
    # Get sales people
    db_conn("exten");
    $sql = "SELECT * FROM salespeople WHERE div = '" . USER_DIV . "' ORDER BY salesp ASC";
    $salespRslt = db_exec($sql) or errDie("Unable to get sales people.");
    if (pg_numrows($salespRslt) < 1) {
        return "<li class='err'> There are no Sales People found in Cubit.</li>";
    } else {
        if (isset($cust) and is_array($cust) and strlen($inv['salespn']) < 1) {
            #if salespn == NULL search for customer default ...
            $get_salesp = "SELECT salesp FROM salespeople WHERE salespid = '{$cust['sales_rep']}' LIMIT 1";
            $run_salesp = db_exec($get_salesp) or errDie("Unable to get sales perosn information.");
            $inv['salespn'] = pg_fetch_result($run_salesp, 0, 0);
        }
        $salesps = "<select name='salespn'>";
        while ($salesp = pg_fetch_array($salespRslt)) {
            if ($salesp['salesp'] == $inv['salespn']) {
                $sel = "selected";
            } else {
                $sel = "";
            }
            $salesps .= "<option value='{$salesp['salesp']}' {$sel}>{$salesp['salesp']}</option>";
        }
        $salesps .= "</select>";
    }
    db_conn('cubit');
    $Sl = "SELECT * FROM settings WHERE constant='SALES'";
    $Ri = db_exec($Sl) or errDie("Unable to get settings.");
    $data = pg_fetch_array($Ri);
    if ($data['value'] == "Yes") {
        $sc = "checked";
    } else {
        $sc = "";
    }
    $sales = "\n\t\t<td>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t<tr>\n\t\t\t\t\t<td>{$salesps}</td>\n\t\t\t\t\t<td>Print</td>\n\t\t\t\t\t<td><input type='checkbox' name='printsales' {$sc}></td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</td>";
    // Retrieve the default comments
    db_conn("cubit");
    $sql = "SELECT value FROM settings WHERE constant='DEFAULT_COMMENTS'";
    $cmntRslt = db_exec($sql) or errDie("Unable to retrieve default comment from Cubit.");
    if (empty($inv["remarks"])) {
        $remarks = base64_decode(pg_fetch_result($cmntRslt, 0));
    } else {
        $remarks = $inv["remarks"];
    }
    if (!isset($showvat)) {
        $showvat = TRUE;
    }
    if ($showvat == TRUE) {
        $vat14 = AT14;
    } else {
        $vat14 = "";
    }
    $deldate = explode("-", $inv["deldate"]);
    $showdoc_html = "'" . str_replace("<div style=\"text-align: left;\"><br></div>", "", $bodydata) . "'";
    if (isset($diffwhBtn) or isset($upBtn) or isset($doneBtn) or isset($print)) {
        $jump_bot = "\n\t\t\t<script>\n\t\t\t\twindow.location.hash='bottom';\n\t\t\t</script>";
    } else {
        $jump_bot = "";
    }
    /* -- Final Layout -- */
    $details = "\n\t\t<script language='JavaScript'>\n\t\t\tfunction update() {\n\t\t\t\tdocument.editForm.bodydata.value = editArea.document.body.innerHTML;\n\t\t\t\tdocument.editForm.submit();\n\t\t\t}\n\t\t\tfunction Init() {\n\t\t\t\teditArea.document.designMode = 'On';\n\t\t\t\teditArea.document.body.innerHTML = {$showdoc_html};\n\t\t\t\teditArea.document.execCommand('justifyleft', false, null);\n\t\t\t}\n\t\t\tfunction controlSelOn(ctrl) {\n\t\t\t\tctrl.style.borderColor = '#000000';\n\t\t\t\tctrl.style.backgroundColor = '#B5BED6';\n\t\t\t\tctrl.style.cursor = 'hand';\n\t\t\t}\n\t\t\tfunction controlSelOff(ctrl) {\n\t\t\t\tctrl.style.borderColor = '#D6D3CE';\n\t\t\t\tctrl.style.backgroundColor = '#D6D3CE';\n\t\t\t}\n\t\t\tfunction controlSelDown(ctrl) {\n\t\t\t\tctrl.style.backgroundColor = '#8492B5';\n\t\t\t}\n\t\t\tfunction controlSelUp(ctrl) {\n\t\t\t\tctrl.style.backgroundColor = '#B5BED6';\n\t\t\t}\n\t\t\tfunction doBold() {\n\t\t\t\teditArea.document.execCommand('bold', false, null);\n\t\t\t}\n\t\t\tfunction doItalic() {\n\t\t\t\teditArea.document.execCommand('italic', false, null);\n\t\t\t}\n\t\t\tfunction doUnderline() {\n\t\t\t\teditArea.document.execCommand('underline', false, null);\n\t\t\t}\n\t\t\tfunction doLeft() {\n\t\t\t\teditArea.document.execCommand('justifyleft', false, null);\n\t\t\t}\n\t\t\tfunction doCenter() {\n\t\t\t\teditArea.document.execCommand('justifycenter', false, null);\n\t\t\t}\n\t\t\tfunction doRight() {\n\t\t\t\teditArea.document.execCommand('justifyright', false, null);\n\t\t\t}\n\t\t\tfunction doOrdList() {\n\t\t\t\teditArea.document.execCommand('insertorderedlist', false, null);\n\t\t\t}\n\t\t\tfunction doBulList() {\n\t\t\t\teditArea.document.execCommand('insertunorderedlist', false, null);\n\t\t\t}\n\t\t\tfunction doRule() {\n\t\t\t\teditArea.document.execCommand('inserthorizontalrule', false, null);\n\t\t\t}\n\t\t\tfunction doSize(fSize) {\n\t\t\t\tif(fSize != '')\n\t\t\t\t\teditArea.document.execCommand('fontsize', false, fSize);\n\t\t\t}\n\t\t\twindow.onload = Init;\n\t\t</script>\n\t\t<center>\n\t\t<h3>New Multi Line Invoice</h3>\n\t\t<form action='" . SELF . "' method='POST' name='editForm' enctype='multipart/form-data'>\n\t\t\t<input type='hidden' name='key' value='update'>\n\t\t\t<input type='hidden' name='invid' value='{$invid}'>\n\t\t<table " . TMPL_tblDflts . " width='95%'>\n\t\t\t<tr>\n\t\t\t\t<td valign='top'>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t{$details}\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Customer Order number</td>\n\t\t\t\t\t\t\t<td valign='center'><input type='text' size='10' name='cordno' value='{$inv['cordno']}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td valign='top' align='right'>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th colspan='2'>Non-Stock Invoice Details</th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Non-Stock Invoice No.</td>\n\t\t\t\t\t\t\t<td valign='center'>TI {$inv['invid']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Proforma Invoice No.</td>\n\t\t\t\t\t\t\t<td><input type='text' name='docref' value='{$inv['docref']}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Date</td>\n\t\t\t\t\t\t\t<td valign='center'>" . mkDateSelect("ninv", $ninv_year, $ninv_month, $ninv_day) . "</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>VAT Inclusive</td>\n\t\t\t\t\t\t\t<td valign='center'>Yes <input type='radio' size='7' name='chrgvat' value='yes' {$chy}> No<input type=radio size=7 name=chrgvat value='no' {$chn}></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Terms</td>\n\t\t\t\t\t\t\t<td valign='center'>{$termssel} Days</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Sales Person</td>\n\t\t\t\t\t\t\t{$sales}\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</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 colspan='2'>{$products}</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<p>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th width='25%'>Quick Links</th>\n\t\t\t\t\t\t\t<th width='25%'>Remarks</th>\n\t\t\t\t\t\t\t<td rowspan='5' valign='top' width='50%'>{$error}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td class='" . bg_class() . "'><a href='nons-invoice-view.php'>View Non-Stock Invoices</a></td>\n\t\t\t\t\t\t\t<td class='" . bg_class() . "' rowspan='4' align='center' valign='top'><textarea name='remarks' rows='4' cols='20'>{$remarks}</textarea></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td align=right>\n\t\t\t\t\t<table " . TMPL_tblDflts . " width='80%'>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>SUBTOTAL</td>\n\t\t\t\t\t\t\t<td align='right'>" . CUR . " <input type='hidden' name='subtot' value='{$SUBTOT}'>{$SUBTOT}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>VAT {$vat14}</td>\n\t\t\t\t\t\t\t<td align='right'>" . CUR . " {$inv['vat']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<th>GRAND TOTAL</th>\n\t\t\t\t\t\t\t<td align='right'>" . CUR . " <input type='hidden' name='total' value='{$TOTAL}'>{$TOTAL}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td align='right'><input type='submit' name='diffwhBtn' onClick='update();' value='Add Item'> |</td>\n\t\t\t\t<td><input type='submit' name='upBtn' onClick='update();' value='Update'>{$done}</td>\n\t\t\t</tr>\n\t\t</table>\n\t\t<a name='bottom'>\n\t\t</form>\n\t\t</center>\n\t\t{$jump_bot}";
    return $details;
}
function multiple_salary($counter = 0, $empnum = 0)
{
    global $_GET;
    extract($_GET);
    if (empty($all)) {
        $all = array();
    } else {
        $all = explode("|", $all);
    }
    if (empty($ded)) {
        $ded = array();
    } else {
        $ded = explode("|", $ded);
    }
    if (empty($frin)) {
        $frin = array();
    } else {
        $frin = explode("|", $frin);
    }
    if (empty($subs)) {
        $subs = array();
    } else {
        $subs = explode("|", $subs);
    }
    $salarr = array("m" => "Per Month", "w" => "Per Week", "f" => "Fortnightly", "h" => "Per Hour");
    $saltyp = extlib_cpsel("saltyp", $salarr, "m");
    $payprd_arr = array("d" => "Daily", "w" => "Weekly", "f" => "Fortnightly", "m" => "Monthly");
    $payprd_day_arr = array("mon" => "Monday", "tue" => "Tuesday", "wed" => "Wendesday", "thu" => "Thursday", "fri" => "Friday");
    if (!isset($payprd)) {
        $payprd = "";
    }
    $payprd = extlib_cpsel("payprd", $payprd_arr, $payprd, "onChange='payprd_change(this);'");
    $payprd_day = extlib_cpsel("payprd_day", $payprd_day_arr, "m");
    $paytarr = array("EFT" => "EFT", "Cheque" => "Cheque", "Cash" => "Cash", "Ledger Account" => "Ledger Account");
    $paytypes = extlib_cpsel("paytype", $paytarr, "Cash");
    // bonus month selection
    $bonus_month = "<select name='sal_bonus_month'>";
    global $ePRDMON;
    for ($i = 1; $i <= 12; $i++) {
        $mon = $ePRDMON[$i];
        $bonus_month .= "<option value='{$mon}'>" . getMonthName($mon) . "</option>";
    }
    $bonus_month .= "</select>";
    $OUTPUT = "\n\t\t<table " . TMPL_tblDflts . ">\n\t\t<form id='emplfrm{$counter}'>\n\t\t\t<input type='hidden' name='key' value='salary2'>\n\t\t\t<input type='hidden' name='empnum' value='{$empnum}'>";
    //	<tr>
    //		<td colspan=2 align=right>
    //			<input type=button value='Save' onClick='savesalary();'>
    //		</td>
    //	</tr>
    $OUTPUT .= "\n\t\t<tr>\n\t\t\t<td colspan='2' align='right'><input type='submit' value='Save'></td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<th colspan='2'>General Salary and Allowances</th>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td><b>Remuneration per Annum</b></td>\n\t\t\t<td>\n\t\t\t\t<table><tr>\n\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t<td><input type='text' size='10' name='basic_sal_annum' value='0.00' class='right'></td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t</tr></table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Salary Calculation</td>\n\t\t\t<td>{$saltyp}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Pay Period</td>\n\t\t\t<td valign='top'>\n\t\t\t\t{$payprd}\n\t\t\t\t<div id='div_payprd_day'>{$payprd_day}</div>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Pay Type</td>\n\t\t\t<td valign='center'>{$paytypes}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Annual Bonus</td>\n\t\t\t<td>\n\t\t\t\t<table><tr>\n\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t<td><input type='text' size='10' name='sal_bonus' value='0.00' class='right'></td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t</tr></table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Bonus - Month</td>\n\t\t\t<td>{$bonus_month}</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td colspan='2'>\n\t\t\t\t<li class='err'>All the amounts here after are monthly amounts.\n\t\t\t\t\tPlease note that in the case of weekly/fortnightly employees the\n\t\t\t\t\tweekly/fortnightly amount needs to be converted to the monthly equivalent\n\t\t\t\t\tusing the following calculation:<br>\n\t\t\t\t\tWeekly: amount x 52 / 12<br>\n\t\t\t\t\tFortnightly: amount x 26 / 12</li>\n\t\t\t</td>\n\t\t</tr>";
    // fringe benefits
    $OUTPUT .= "\n\t\t<tr>\n\t\t\t<th colspan='2'>Fringe Benefits</th>\n\t\t</tr>\n\t  \t<tr class='" . bg_class() . "'>\n\t  \t\t<td>Medical Contribution</td>\n\t  \t\t<td align='right'><div id='div_fringe_medaid'>" . CUR . "0.00</div></td>\n\t  \t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Motorcar 1 Determined Value</td>\n\t\t\t<td>\n\t\t\t\t<table><tr>\n\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t<td><input type='text' size='10' name='fringe_car1' value='0.00' class='right'></td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t</tr></table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>- Contributions for Use</td>\n\t\t\t<td>\n\t\t\t\t<table><tr>\n\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t<td><input type='text' size='10' name='fringe_car1_contrib' value='0.00' class='right'></td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t</tr></table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>- Pays for own Fuel</td>\n\t\t\t<td>\n\t\t\t\t<table><tr>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td>\n\t\t\t\t\t\t<select name='fringe_car1_fuel'>\n\t\t\t\t\t\t\t<option value='0'>No</option>\n\t\t\t\t\t\t\t<option value='1'>Yes</option>\n\t\t\t\t\t\t</select>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t</tr></table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>- Pays for Servicing</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<select name='fringe_car1_service'>\n\t\t\t\t\t\t\t\t<option value='0'>No</option>\n\t\t\t\t\t\t\t\t<option value='1'>Yes</option>\n\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr>\n\t  \t\t<td colspan='2'><li class='err'>In case of 2 motorcars it is accepted that the second\n\t  \t\t\tvehicle is not used for business purposes. In other cases PAYE has to be\n\t  \t\t\tmanually adjusted when processing salary.</li>\n\t  \t\t</td>\n\t  \t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Motorcar 2 Determined Value</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='fringe_car2' value='0.00' class='right'></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>- Contributions for Use</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='fringe_car2_contrib' value='0.00' class='right'></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>- Pays for own Fuel</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<select name='fringe_car2_fuel'>\n\t\t\t\t\t\t\t\t<option value='0'>No</option>\n\t\t\t\t\t\t\t\t<option value='1'>Yes</option>\n\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>- Pays for Servicing</td>\n\t\t\t<td>\n\t\t\t\t<table><tr>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td>\n\t\t\t\t\t\t<select name='fringe_car2_service'>\n\t\t\t\t\t\t\t<option value='0'>No</option>\n\t\t\t\t\t\t\t<option value='1'>Yes</option>\n\t\t\t\t\t\t</select>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t</tr></table>\n\t\t\t</td>\n\t\t</tr>";
    $i = 0;
    foreach ($frin as $fid) {
        $OUTPUT .= "\n\t  \t\t<input type='hidden' name='fringeid[{$fid}]' value=''>\n\t  \t\t<tr class='" . bg_class() . "'>\n\t  \t\t\t<td><div id='divfrin[{$fid}]'></div></td>\n\t  \t\t\t<td>\n\t  \t\t\t\t<table>\n\t  \t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><div id='divfrinamt[{$fid}]'>&nbsp;</div></td>\n\t\t\t\t\t\t\t<td><input type='text' size='10' name='fringebens[{$fid}]' value='' class='right'></td>\n\t\t\t\t\t\t\t<td><div id='divfrinperc[{$fid}]'>&nbsp;</div></td>\n\t\t  \t\t\t\t</tr>\n\t\t  \t\t\t</table>\n\t\t\t\t</td>\n\t  \t\t</tr>";
    }
    // allowances
    $OUTPUT .= "\n\t\t<tr>\n\t\t\t<th colspan='2'>Allowances</th>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Travel Allowance</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='all_travel' value='0.00' class='right'></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>";
    $i = 1;
    foreach ($all as $aid) {
        $aid += 0;
        #get allowaccid for this allowance
        $get_allaccid = "SELECT accid FROM allowances WHERE id = '{$aid}' LIMIT 1";
        $run_allaccid = db_exec($get_allaccid) or errDie("Unable to get allowance information.");
        if (pg_numrows($run_allaccid) > 0) {
            #found!
            $aidaccid = pg_fetch_result($run_allaccid, 0, 0);
        } else {
            $aidaccid = 0;
        }
        $OUTPUT .= "\n\t\t\t<input type='hidden' name='allowid[{$aid}]' value=''>\n\t\t\t<input type='hidden' name='allowaccid[{$aid}]' value='{$aidaccid}'>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><div id='divall[{$aid}]'></div></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><div id='divallamt[{$aid}]'>&nbsp;</div></td>\n\t\t\t\t\t\t\t<td><input type='text' size='10' name='allowances[{$aid}]' value='' class='right'></td>\n\t\t\t\t\t\t\t<td><div id='divallperc[{$aid}]'>&nbsp;</div></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>";
    }
    if (count($subs) > 0) {
        $OUTPUT .= "\n\t\t\t<tr>\n\t\t\t\t<th colspan='2'>Subsistence Allowances</th>\n\t\t\t</tr>";
    }
    $i = 1;
    foreach ($subs as $sid) {
        $OUTPUT .= "\n\t\t\t<input type='hidden' name='subsname[{$sid}]' value=''>\n\t\t\t<input type='hidden' name='subsacc[{$sid}]' value=''>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><div id='subsname[{$sid}]'></div></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Amount:</td><td>" . CUR . " <input type='text' name='subsamt[{$sid}]' value=''></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Days:</td><td><input type='text' name='subsdays[{$sid}]' value=''></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>";
    }
    $OUTPUT .= "\n\t\t<tr>\n\t\t\t<th colspan='2'>Deductions: Company Contributions</th>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>SDL</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td><input type='hidden' size='10' name='comp_sdl' value='0' class='right'>1</td>\n\t\t\t\t\t\t<td>%</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>UIF</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td><input type='hidden' size='10' name='comp_uif' value='0' class='right'>1</td>\n\t\t\t\t\t\t<td>%</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Pension Fund</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='comp_pension' value='0' class='right'></td>\n\t\t\t\t\t\t<td>%</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Retirement Annuity Fund</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='comp_ret' value='0.00' class='right'></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Medical Contribution</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='comp_medical' value='0.00' class='right' onChange='updateMedFringe();'></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t<tr class='" . bg_class() . "'>\n\t\t<td>Provident Fund</td>\n\t\t<td>\n\t\t\t<table>\n\t\t\t\t<tr>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td><input type='text' size='10' name='comp_provident' value='0' class='right'></td>\n\t\t\t\t\t<td>%</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</td>\n\t</tr>";
    $i = 0;
    foreach ($ded as $did) {
        /*		$OUTPUT .= "
        		<tr class='".bg_class()."'>
        			<td><div id='divcomp_ded[$did]'></div></td>
        			<td>
        				<table><tr>
        					<td><div id='divcomp_dedamt[$did]'>&nbsp;</div></td>
        					<td><input type=text size=10 name='comp_deductions[$did]' value='' class=right></td>
        					<td><div id='divcomp_dedperc[$did]'>&nbsp;</div></td>
        				</tr></table>
        			</td>
        		</tr>";*/
        $OUTPUT .= "<input type='hidden' size='10' name='comp_deductions[{$did}]' value=''>";
    }
    /*
    	$OUTPUT .= "
    	<tr class='bg-even'>
    		<td>Other</td>
    		<td>
    			<table></tr>
    				<td>".CUR."</td>
    				<td><input type=text size=10 name=comp_other value='0' class=right></td>
    				<td>&nbsp;</td>
    			</tr></table>
    		</td>
    	</tr>";*/
    $OUTPUT .= "<input type='hidden' name='comp_other' value='0'>";
    // deductions
    $OUTPUT .= "\n\t\t<tr>\n\t\t\t<th colspan='2'>Deductions: Employee Contributions</th>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>UIF</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td><input type='hidden' size='10' name='emp_uif' value='0' class='right'>1</td>\n\t\t\t\t\t\t<td>%</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Pension Fund</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='emp_pension' value='0' class='right'></td>\n\t\t\t\t\t\t<td>%</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Retirement Annuity Fund</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='emp_ret' value='0.00' class='right'></td>\n\t\t\t\t\t\t<td><li class='err'>To be paid to RA fund by employer</li></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Medical Contribution</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>" . CUR . "</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='emp_medical' value='0.00' class='right' onChange='updateMedFringe();'></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td> - Total Benificiaries<br>(Including Member)</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td><input type='text' size='2' name='emp_meddeps' value='0' class='right'></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Provident Fund</td>\n\t\t\t<td>\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td><input type='text' size='10' name='emp_provident' value='0' class='right'></td>\n\t\t\t\t\t\t<td>%</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>";
    $i = 1;
    foreach ($ded as $did) {
        $OUTPUT .= "\n\t\t\t<input type='hidden' name='deductid[{$did}]' value=''>\n\t\t\t<input type='hidden' name='deducttype[{$did}]' value=''>\n\t\t\t<input type='hidden' name='deductaccid[{$did}]' value=''>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><div id='divded[{$did}]'></div></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><div id='divdedamt[{$did}]'>&nbsp;</div></td>\n\t\t\t\t\t\t\t<td><input type='text' size='10' name='deductions[{$did}]' value='' class='right'></td>\n\t\t\t\t\t\t\t<td><div id='divdedperc[{$did}]'>&nbsp;</div></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>";
    }
    /*	$OUTPUT .= "
    	<tr class='bg-even'>
    		<td>Other</td>
    		<td>
    			<table><tr>
    				<td>".CUR."</td>
    				<td><input type=text size=10 name=emp_other value='0' class=right></td>
    				<td>&nbsp;</td>
    			</tr></table>
    		</td>
    	</tr>";*/
    $OUTPUT .= "<input type='hidden' name='emp_other' value='0'>";
    //	<tr>
    //		<td colspan=2 align=right>
    //			<input type=button value='Save' onClick='savesalary();'>
    //		</td>
    //	</tr>
    #old java script method
    $OUTPUT .= "\n\t\t\t<tr>\n\t\t\t\t<td colspan='2' align='right'><input type='submit' value='Save'></td>\n\t\t\t</tr>\n\t\t</form>\n\t\t</table>";
    //	$OUTPUT .= "
    //	<tr>
    //		<td colspan=2 align=right>
    //			<input type='submit' value='Save'>
    //		</td>
    //	</tr>
    //	</form>
    //	</table>";
    // javascript
    $OUTPUT .= "\n\t\t<script>\n\t\t\tfunction payprd_change(p) {\n\t\t\t\tif ( p.value == \"f\" || p.value == \"w\" ) {\n\t\t\t\t\tdocument.getElementById('div_payprd_day').style.visibility = 'visible';\n\t\t\t\t\tdocument.getElementById('div_payprd_day').style.height = document.getElementById('emplfrm{$counter}').payprd_day.style.height;\n\t\t\t\t} else {\n\t\t\t\t\tdocument.getElementById('div_payprd_day').style.visibility = 'hidden';\n\t\t\t\t\tdocument.getElementById('div_payprd_day').style.height = '0';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// get all the different objects to access\n\t\t\tif ( window.opener.parent.mainframe ) {\n\t\t\t\topdoc = window.opener.parent.mainframe.document;\n\t\t\t} else {\n\t\t\t\topdoc = window.opener.document;\n\t\t\t}\n\n\t\t\topfrm = opdoc.getElementById('emplfrm{$counter}');\n\t\t\tefrm = document.getElementById('emplfrm{$counter}');\n\n\t\t\t// gets the salary info from the opener\n\t\t\tfunction getsalary() {\n\t\t\t\tefrm.saltyp.value = opfrm.saltyp.value;\n\t\t\t\tefrm.payprd.value = opfrm.payprd.value;\n\t\t\t\tefrm.payprd_day.value = opfrm.payprd_day.value;\n\t\t\t\tpayprd_change(efrm.payprd);\n\t\t\t\tefrm.paytype.value = opfrm.paytype.value;\n\t\t\t\tefrm.basic_sal_annum.value = opfrm.basic_sal_annum.value;\n\t\t\t\tefrm.sal_bonus.value = opfrm.sal_bonus.value;\n\t\t\t\tefrm.sal_bonus_month.value = opfrm.sal_bonus_month.value;\n\t\t\t\tefrm.all_travel.value = opfrm.all_travel.value;\n\t\t\t\tefrm.comp_sdl.value = opfrm.comp_sdl.value;\n\t\t\t\tefrm.comp_uif.value = opfrm.comp_uif.value;\n\t\t\t\tefrm.comp_other.value = opfrm.comp_other.value;\n\t\t\t\tefrm.comp_provident.value = opfrm.comp_provident.value;\n\t\t\t\tefrm.comp_medical.value = opfrm.comp_medical.value;\n\t\t\t\tefrm.comp_ret.value = opfrm.comp_ret.value;\n\t\t\t\tefrm.comp_pension.value = opfrm.comp_pension.value;\n\t\t\t\tefrm.emp_uif.value = opfrm.emp_uif.value;\n\t\t\t\tefrm.emp_other.value = opfrm.emp_other.value;\n\t\t\t\tefrm.emp_provident.value = opfrm.emp_provident.value;\n\t\t\t\tefrm.emp_medical.value = opfrm.emp_medical.value;\n\t\t\t\tefrm.emp_meddeps.value = opfrm.emp_meddeps.value;\n\t\t\t\tefrm.emp_ret.value = opfrm.emp_ret.value;\n\t\t\t\tefrm.emp_pension.value = opfrm.emp_pension.value;\n\t\t\t\tefrm.fringe_car1.value = opfrm.fringe_car1.value;\n\t\t\t\tefrm.fringe_car1_contrib.value = opfrm.fringe_car1_contrib.value;\n\t\t\t\tefrm.fringe_car1_fuel.options[opfrm.fringe_car1_fuel.value].selected = true;\n\t\t\t\tefrm.fringe_car1_service.options[opfrm.fringe_car1_service.value].selected = true;\n\t\t\t\tefrm.fringe_car2.value = opfrm.fringe_car2.value;\n\t\t\t\tefrm.fringe_car2_contrib.value = opfrm.fringe_car2_contrib.value;\n\t\t\t\tefrm.fringe_car2_fuel.options[opfrm.fringe_car2_fuel.value].selected = true;\n\t\t\t\tefrm.fringe_car2_service.options[opfrm.fringe_car2_service.value].selected = true;";
    foreach ($frin as $fid) {
        $OUTPUT .= "\n\t\t\t// set the fringe benefit symbol\n\t\t\tfrintype = opfrm.elements['fringetype[{$fid}]'].value;\n\n\t\t\tif ( frintype == 'Amount' ) {\n\t\t\t\tdocument.getElementById('divfrinamt[{$fid}]').innerHTML = '" . CUR . "';\n\t\t\t} else {\n\t\t\t\tdocument.getElementById('divfrinperc[{$fid}]').innerHTML = '%';\n\t\t\t}\n\n\t\t\t// fringeben name\n\t\t\tdocument.getElementById('divfrin[{$fid}]').innerHTML = opfrm.elements['fringename[{$fid}]'].value;\n\n\t\t\t// fringeben fields\n\t\t\tefrm.elements['fringebens[{$fid}]'].value = opfrm.elements['fringebens[{$fid}]'].value;\n\t\t\tefrm.elements['fringeid[{$fid}]'].value = opfrm.elements['fringeid[{$fid}]'].value";
    }
    foreach ($all as $aid) {
        $OUTPUT .= "\n\t\t\t// set the allowance symbol\n\t\t\talltype = opfrm.elements['allowtype[{$aid}]'].value;\n\n\t\t\tif ( alltype == 'Amount' ) {\n\t\t\t\tdocument.getElementById('divallamt[{$aid}]').innerHTML = '" . CUR . "';\n\t\t\t} else {\n\t\t\t\tdocument.getElementById('divallperc[{$aid}]').innerHTML = '%';\n\t\t\t}\n\n\t\t\t// allowance name\n\t\t\tdocument.getElementById('divall[{$aid}]').innerHTML = opfrm.elements['allowname[{$aid}]'].value;\n\n\t\t\t// allowance fields\n\t\t\tefrm.elements['allowances[{$aid}]'].value = opfrm.elements['allowances[{$aid}]'].value;\n\t\t\tefrm.elements['allowid[{$aid}]'].value = opfrm.elements['allowid[{$aid}]'].value;";
    }
    foreach ($subs as $sid) {
        $OUTPUT .= "\n\t\t\t// set the allowance name\n\t\t\tdocument.getElementById('subsname[{$sid}]').innerHTML = opfrm.elements['subsname[{$sid}]'].value;\n\n\t\t\t// set the allowance amount\n\t\t\tefrm.elements['subsamt[{$sid}]'].value = opfrm.elements['subsamt[{$sid}]'].value;\n\n\t\t\t// allowance days\n\t\t\tefrm.elements['subsdays[{$sid}]'].value = opfrm.elements['subsdays[{$sid}]'].value;\n\t\t\tefrm.elements['subsname[{$sid}]'].value = opfrm.elements['subsname[{$sid}]'].value;\n\t\t\tefrm.elements['subsacc[{$sid}]'].value = opfrm.elements['subsacc[{$sid}]'].value;";
    }
    foreach ($ded as $did) {
        $OUTPUT .= "\n\t\t\t// set the deduction symbol\n\t\t\tdedtype = opfrm.elements['deducttype[{$did}]'].value;\n\n\t\t\tif ( dedtype == 'Amount' ) {\n\t\t\t\tdocument.getElementById('divdedamt[{$did}]').innerHTML = '" . CUR . "';\n\t\t\t\t//document.getElementById('divcomp_dedamt[{$did}]').innerHTML = '" . CUR . "';\n\t\t\t} else {\n\t\t\t\tdocument.getElementById('divdedperc[{$did}]').innerHTML = '%';\n\t\t\t\t//document.getElementById('divcomp_dedperc[{$did}]').innerHTML = '%';\n\t\t\t}\n\n\t\t\t// set the deduction name\n\t\t\tdocument.getElementById('divded[{$did}]').innerHTML = opfrm.elements['deductname[{$did}]'].value;\n\t\t\t//document.getElementById('divcomp_ded[{$did}]').innerHTML = opfrm.elements['deductname[{$did}]'].value;\n\n\t\t\t// deduction fields\n\t\t\tefrm.elements['deductions[{$did}]'].value = opfrm.elements['deductions[{$did}]'].value;\n\t\t\tefrm.elements['deductid[{$did}]'].value = opfrm.elements['deductid[{$did}]'].value;\n\t\t\tefrm.elements['deducttype[{$did}]'].value = opfrm.elements['deducttype[{$did}]'].value;\n\t\t\tefrm.elements['deductaccid[{$did}]'].value = opfrm.elements['deductaccid[{$did}]'].value;\n\t\t\t//efrm.elements['comp_deductions[{$did}]'].value = opfrm.elements['comp_deductions[{$did}]'].value;";
    }
    $OUTPUT .= "\n\t\t} // end get salary\n\n\t\t// saves the salary to the opener\n\t\tfunction savesalary() {\n\t\t\t// determine what to display about the salary\n\t\t\tswitch ( efrm.saltyp.value ) {\n\t\t\tcase 'w':\n\t\t\t\tsalperiod = 'per Week';\n\t\t\t\tsaldivisor = 52;\n\t\t\t\tbreak;\n\t\t\tcase 'h':\n\t\t\t\tsalperiod = 'per Hour';\n\t\t\t\tsaldivisor = 52 * opfrm.hpweek.value;\n\t\t\t\tbreak;\n\t\t\tcase 'f':\n\t\t\t\tsalperiod = 'Fortnightly';\n\t\t\t\tsaldivisor = 26;\n\t\t\t\tbreak;\n\t\t\tcase 'm':\n\t\t\tdefault:\n\t\t\t\tsalperiod = 'per Month';\n\t\t\t\tsaldivisor = 12;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tsalamount = parseFloat(efrm.basic_sal_annum.value) / saldivisor;\n\t\t\tsalamount = salamount.toFixed(2);\n\n\t\t\tsalvalue = '" . CUR . "' + salamount + ' ' + salperiod;\n\n\t\t\t// set the display salary\n\t\t\topdoc.getElementById('div_basic_sal').innerHTML = salvalue;\n\n\t\t\t// set the add employee form elements\n\t\t\topfrm.saltyp.value = efrm.saltyp.value;\n\t\t\topfrm.payprd.value = efrm.payprd.value;\n\t\t\topfrm.payprd_day.value = efrm.payprd_day.value;\n\t\t\topfrm.paytype.value = efrm.paytype.value;\n\t\t\topfrm.basic_sal_annum.value = efrm.basic_sal_annum.value;\n\t\t\topfrm.sal_bonus.value = efrm.sal_bonus.value;\n\t\t\topfrm.sal_bonus_month.value = efrm.sal_bonus_month.value; // each month's number is one more than it's index obviously\n\t\t\topfrm.all_travel.value = efrm.all_travel.value;\n\t\t\n\t\t\topfrm.comp_sdl.value = efrm.comp_sdl.value;\n\t\t\topfrm.comp_uif.value = efrm.comp_uif.value;\n\t\t\topfrm.comp_other.value = efrm.comp_other.value;\n\t\t\topfrm.comp_provident.value = efrm.comp_provident.value;\n\t\t\topfrm.comp_medical.value = efrm.comp_medical.value;\n\t\t\topfrm.comp_ret.value = efrm.comp_ret.value;\n\t\t\topfrm.comp_pension.value = efrm.comp_pension.value;\n\t\t\n\t\t\topfrm.emp_uif.value = efrm.emp_uif.value;\n\t\t\topfrm.emp_other.value = efrm.emp_other.value;\n\t\t\topfrm.emp_provident.value = efrm.emp_provident.value;\n\t\t\topfrm.emp_medical.value = efrm.emp_medical.value;\n\t\t\topfrm.emp_meddeps.value = efrm.emp_meddeps.value;\n\t\t\topfrm.emp_ret.value = efrm.emp_ret.value;\n\t\t\topfrm.emp_pension.value = efrm.emp_pension.value;\n\t\t\n\t\t\topfrm.fringe_car1.value = efrm.fringe_car1.value;\n\t\t\topfrm.fringe_car1_contrib.value = efrm.fringe_car1_contrib.value;\n\t\t\topfrm.fringe_car1_fuel.value = efrm.fringe_car1_fuel.value;\n\t\t\topfrm.fringe_car1_service.value = efrm.fringe_car1_service.value;\n\t\t\topfrm.fringe_car2.value = efrm.fringe_car2.value;\n\t\t\topfrm.fringe_car2_contrib.value = efrm.fringe_car2_contrib.value;\n\t\t\topfrm.fringe_car2_fuel.value = efrm.fringe_car2_fuel.value;\n\t\t\topfrm.fringe_car2_service.value = efrm.fringe_car2_service.value;";
    foreach ($frin as $fid) {
        $OUTPUT .= "\n\t\t\topfrm.elements['fringebens[{$fid}]'].value = efrm.elements['fringebens[{$fid}]'].value;";
    }
    foreach ($all as $aid) {
        $OUTPUT .= "\n\t\t\topfrm.elements['allowid[{$aid}]'].value = efrm.elements['allowid[{$aid}]'].value;\n\t\t\topfrm.elements['allowances[{$aid}]'].value = efrm.elements['allowances[{$aid}]'].value;";
    }
    foreach ($subs as $sid) {
        $OUTPUT .= "\n\t\t\topfrm.elements['subsamt[{$sid}]'].value = efrm.elements['subsamt[{$sid}]'].value;\n\t\t\topfrm.elements['subsdays[{$sid}]'].value = efrm.elements['subsdays[{$sid}]'].value;";
    }
    foreach ($ded as $did) {
        $OUTPUT .= "\n\t\t\topfrm.elements['deductions[{$did}]'].value = efrm.elements['deductions[{$did}]'].value;\n\t\t\topfrm.elements['comp_deductions[{$did}]'].value = efrm.elements['comp_deductions[{$did}]'].value;";
    }
    $OUTPUT .= "\n\t\t\talert = 'test';\n\t\t\t\twindow.close();\n\t\t\t} // end save salary\n\n\t\t\tfunction updateMedFringe() {\n\t\t\t\tmemp = parseFloat(efrm.emp_medical.value);\n\t\t\t\tmcomp = parseFloat(efrm.comp_medical.value);\n\t\t\t\tthrd = (memp + mcomp) / 3 * 2;\n\t\t\t\tif ( (fben = mcomp - thrd) < 0 ) {\n\t\t\t\t\tfben = 0;\n\t\t\t\t}\n\t\t\t\tfben = fben.toFixed(2);\n\t\t\t\tdocument.getElementById('div_fringe_medaid').innerHTML = '" . CUR . " ' + fben;\n\t\t\t}\n\t\t\tdocument.setOnLoad=getsalary();\n\t\t</script>";
    return $OUTPUT;
}
function editUser($_POST)
{
    extract($_POST);
    $username = substr($username, 0, 255);
    if (!isset($active_dept)) {
        $active_dept = "0";
    }
    // check content of variable
    if (preg_match("/[^\\w]/", $username)) {
        // Alphanum, 4-10
        $OUTPUT = "Invalid user name.";
    } else {
        db_connect();
        // Query server
        $sql = "SELECT * FROM users WHERE username='******' AND div='" . USER_DIV . "'";
        $prnUsrRslt = db_exec($sql) or errDie("ERROR: Unable to edit user: {$username}.", SELF);
        // Die with custom error if failed
        if (pg_numrows($prnUsrRslt) < 1) {
            return "<li class='err'>Invalid Use Of Module. User Not Found.</li>";
        }
        $myUsr = pg_fetch_array($prnUsrRslt);
        $sql = "SELECT * FROM depts ORDER BY dept";
        $rslt = db_exec($sql);
        $i = 0;
        $count = 0;
        $dept_drop = "<select name='active_dept' onChange='javascript:document.form1.submit();'>";
        $dept_drop .= "<option value='0'>Select A Department</option>";
        while ($darr = pg_fetch_array($rslt)) {
            if ($darr['deptid'] == $active_dept) {
                $dept_drop .= "<option value='{$darr['deptid']}' selected>{$darr['dept']}</option>";
            } else {
                $dept_drop .= "<option value='{$darr['deptid']}'>{$darr['dept']}</option>";
            }
        }
        $dept_drop .= "</select>";
        if (!isset($active_dept) or $active_dept == "0") {
            $department = "";
        } else {
            $department = "";
            $get_dept = "SELECT dept FROM depts WHERE deptid = '{$active_dept}' LIMIT 1";
            $run_dept = db_exec($get_dept) or errDie("Unable to get department information.");
            if (pg_numrows($run_dept) < 1) {
                return "<li class='err'>Department Information Not Found.</li>";
            } else {
                $dept_name = pg_fetch_result($run_dept, 0, 0);
            }
            $department .= "\n\t\t\t\t<tr>\n\t\t\t\t\t<th colspan='2'>Select User Permissions</th>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td colspan='2'><input type='submit' name='deps[{$active_dept}]' value='Add'><input type='submit' name='depsrem[{$active_dept}]' value='Remove'> {$dept_name}</td>\n\t\t\t\t</tr>";
            $get_scripts = "SELECT * from deptscripts WHERE dept = '{$active_dept}' ORDER BY script,scriptname";
            $run_scripts = db_exec($get_scripts) or errDie("Unable to get department script permission information.");
            if (pg_numrows($run_scripts) < 1) {
                return "<li class='err'>Department Has No Permission Scripts.</li>";
            } else {
                while ($scr = pg_fetch_array($run_scripts)) {
                    $Tp['script'] = $scr['scriptname'];
                    #check if this script should be ticked ...
                    $Sql = "SELECT script FROM userscripts WHERE username='******' and script='{$scr['script']}' LIMIT 1";
                    $Ex = db_exec($Sql);
                    if (pg_numrows($Ex) > 0) {
                        $Ch = "checked";
                    } else {
                        $Ch = "";
                    }
                    $department .= "\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>..... <input type='checkbox' name='perm[]' {$Ch} value='{$scr['script']}'> {$Tp['script']}</td>\n\t\t\t\t\t\t</tr>";
                }
            }
        }
        # Connect to db
        db_connect();
        $tarr = array("Yes" => "Yes", "No" => "No");
        $tsel = extlib_cpsel("tool", $tarr, $myUsr['help']);
        $sql = "SELECT empnum, enum, sname, fnames FROM cubit.employees";
        $emp_rslt = db_exec($sql) or errDie("Unable to retrieve employees.");
        $employee_sel = "\n\t\t\t<select name='empnum'>\n\t\t\t\t<option value='0'>[None]</option>";
        while ($emp_data = pg_fetch_array($emp_rslt)) {
            if ($myUsr["empnum"] == $emp_data["empnum"]) {
                $sel = "selected";
            } else {
                $sel = "";
            }
            $employee_sel .= "<option value='{$emp_data['empnum']}' {$sel}>{$emp_data['sname']} {$emp_data['fnames']} - {$emp_data['enum']}</option>";
        }
        $employee_sel .= "</select>";
        $pgroups_arr = explode(",", $myUsr['payroll_groups']);
        $get_pays = "SELECT * FROM emp_groups ORDER BY emp_group";
        $run_pays = db_exec($get_pays) or errDie("Unable to get payroll group information.");
        if (pg_numrows($run_pays) < 1) {
            $payroll_groups = "\n\t\t\t\t<tr>\n\t\t\t\t\t<td colspan='2'>No Payroll Groups Found.</td>\n\t\t\t\t</tr>";
        } else {
            $payroll_groups = "";
            while ($garr = pg_fetch_array($run_pays)) {
                $checked = "";
                if (in_array("{$garr['id']}", $pgroups_arr)) {
                    $checked = "checked='yes'";
                }
                $payroll_groups .= "\n\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t<td>" . ucfirst($garr['emp_group']) . "</td>\n\t\t\t\t\t\t<td><input type='checkbox' name='payroll_group[{$garr['id']}]' value='{$garr['id']}' {$checked}></td>\n\t\t\t\t\t</tr>";
            }
        }
        $payroll_groups .= "<tr><td><br></td></tr>";
        # Set up table & form for edit (a is action, so the script knows what to do)
        $OUTPUT = "\n\t\t\t<h3>Edit user</h3>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<form action='" . SELF . "' method='POST' name='form1'>\n\t\t\t\t<input type='hidden' name='a' value='confirm'>\n\t\t\t\t<input type='hidden' name='username' value='{$username}'>\n\t\t\t\t<input type='hidden' name='oldusrnme' value='{$username}'>\n\t\t\t\t<input type='hidden' name='old_dept' value='{$active_dept}'>\n\t\t\t\t<input type='hidden' name='div' value='2'>\n\t\t\t\t<tr>\n\t\t\t\t\t<th>Field</th>\n\t\t\t\t\t<th>Value</th>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='datacell'>\n\t\t\t\t\t<td>Username</td>\n\t\t\t\t\t<td align='center'><input type='text' size='20' name='username' value='{$username}'></td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='datacell2'>\n\t\t\t\t\t<td>Password</td>\n\t\t\t\t\t<td align='center'>\n\t\t\t\t\t\t<table border='0' cellpadding='2' cellspacing='0'>\n\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t<td><input type='radio' name='chgpass' value='no' checked></td>\n\t\t\t\t\t\t\t\t<td colspan='2'>Don't change password</td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t<td>Or</td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t<td><input type='radio' name='chgpass' value='yes'></td>\n\t\t\t\t\t\t\t\t<td>Password</td>\n\t\t\t\t\t\t\t\t<td><input type='password' size='20' name='password' value=''></td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t<td><br></td>\n\t\t\t\t\t\t\t\t<td>Confirm password</td>\n\t\t\t\t\t\t\t\t<td><input type='password' size='20' name='password2' value=''></td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t</table>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Show Tooltips</td>\n\t\t\t\t\t<td>{$tsel}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>Employee</td>\n\t\t\t\t\t<td>{$employee_sel}</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td><br></td>\n\t\t\t\t\t<td align='center'><input type='submit' name='next' value='Commit changes'>&nbsp;<input type='reset' value='Reset form'></td>\n\t\t\t\t</tr>\n\t\t\t\t" . TBL_BR . "\n\t\t\t</table>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t<tr>\n\t\t\t\t\t<th colspan='2'>Payroll Group Permissions</th>\n\t\t\t\t</tr>\n\t\t\t\t{$payroll_groups}\n\t\t\t</table>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t<tr>\n\t\t\t\t\t<th>Departments</th>\n\t\t\t\t</tr>\n\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t<td>{$dept_drop}</td>\n\t\t\t\t</tr>\n\t\t\t\t" . TBL_BR . "\n\t\t\t</table>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t{$department}\n\t\t\t</table>\n\t\t\t<tr>\n\t\t\t\t<td><br></td>\n\t\t\t\t<td align='center'><input type='submit' name='next' value='Commit changes'></td>\n\t\t\t</tr>\n\t\t\t</form>\n\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t<tr>\n\t\t\t\t\t<th>Quick Links</th>\n\t\t\t\t</tr>\n\t\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t\t</table>";
    }
    return $OUTPUT;
}
function get_data($err)
{
    global $_GET;
    extract($_GET);
    $fields["surname"] = "";
    $fields["name"] = "";
    $fields["accountname"] = "";
    $fields["account_id"] = 0;
    $fields["account_type"] = "";
    $fields["lead_source"] = 0;
    $fields["title"] = "";
    $fields["department"] = "";
    $fields["birthdate"] = date("Y-m-d");
    $fields["reports_to_id"] = 0;
    //$fields["assigned_to_id"] = "";
    $fields["tell"] = "";
    $fields["cell"] = "";
    $fields["fax"] = "";
    $fields["tell_office"] = "";
    $fields["tell_other"] = "";
    $fields["email"] = "";
    $fields["email_other"] = "";
    $fields["assistant"] = "";
    $fields["assistant_phone"] = "";
    $fields["padd"] = "";
    $fields["padd_city"] = "";
    $fields["padd_state"] = "";
    $fields["padd_code"] = "";
    $fields["padd_country"] = "";
    $fields["hadd"] = "";
    $fields["hadd_city"] = "";
    $fields["hadd_state"] = "";
    $fields["hadd_code"] = "";
    $fields["hadd_country"] = "";
    $fields["description"] = "";
    $fields["upload_img"] = "no";
    $fields["team_id"] = 0;
    foreach ($fields as $key => $value) {
        if (!isset(${$key})) {
            ${$key} = $value;
        }
    }
    list($bf_year, $bf_month, $bf_day) = explode("-", $birthdate);
    // reports to name
    $reports_to = "";
    if (!empty($reports_to_id)) {
        $reports_to_id += 0;
        db_conn("cubit");
        $sql = "SELECT * FROM cons WHERE id='{$reports_to_id}' LIMIT 1";
        $rslt = db_exec($sql) or errDie("Error retrieving 'Reports to' value.");
        $dat = pg_fetch_array($rslt);
        if (!empty($dat["name"])) {
            $reports_to .= "{$dat['name']} ";
        }
        $reports_to .= "{$dat['surname']}";
    }
    // crm value
    if (isset($crm)) {
        $ex = "<input type='hidden' name='crm' value=''>";
    } else {
        $ex = "";
    }
    $Cons = "\n\t\t<select size='1' name='Con'>\n\t\t\t<option selected value='No'>No</option>\n\t\t\t<option value='Yes'>Yes</option>\n\t\t</select>";
    $select_source = extlib_cpsel("lead_source", crm_get_leadsrc(-1), $lead_source);
    if ($upload_img == "yes") {
        $img_yes = "checked";
        $img_no = "";
    } else {
        $img_yes = "";
        $img_no = "checked";
    }
    // Create the teams dropdown
    $sql = "SELECT * FROM crm.teams ORDER BY name ASC";
    $team_rslt = db_exec($sql) or errDie("Unable to retrieve teams.");
    $teams_sel = "<select name='team_id'>";
    $teams_sel .= "<option value='0'>[None]</option>";
    while ($team_data = pg_fetch_array($team_rslt)) {
        if ($team_id == $team_data["id"]) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $teams_sel .= "<option value='{$team_data['id']}'>{$team_data['name']}</option>";
    }
    $teams_sel .= "</select>";
    $get_data = "\n\t\t<h3>New " . ucfirst($type) . " Contact</h3>\n\t\t{$err}\n\t\t<form action='" . SELF . "' method='POST' name='frm_con'>\n\t\t\t<input type='hidden' name='key' value='confirm'>\n\t\t\t<input type='hidden' name='type' value='{$type}'>\n\t\t\t<input type='hidden' name='supid' value='{$supid}'>\n\t\t\t<input type='hidden' name='cusnum' value='{$cusnum}'>\n\t\t<table cellpadding='2' cellspacing='0' class='shtable'>\n\t\t\t{$ex}\n\t\t\t<tr>\n\t\t\t\t<th colspan='4'>Contact Information</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td width='120'>First Name</td>\n\t\t\t\t<td width='210'><input type='text' size='27' name='name' value='{$name}'></td>\n\t\t\t\t<td width='120'>Office Phone</td>\n\t\t\t\t<td width='210'><input type='text' size='27' name='tell_office' value='{$tell_office}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Company/Last Name</td>\n\t\t\t\t<td><input type='text' size='27' name='surname' value='{$surname}'></td>\n\t\t\t\t<td>Mobile</td>\n\t\t\t\t<td><input type='text' size='27' name='cell' value='{$cell}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Reports To</td>\n\t\t\t\t<td>\n\t\t\t\t\t<input readonly='yes' type='text' size='27' name='reports_to' value='{$reports_to}'>\n\t\t\t\t\t<input type='hidden' name='reports_to_id' value='{$reports_to_id}'>\n\t\t\t\t\t<input type='button' value='Select' onClick='popupSized(\"list_cons.php?action=reportsto\", \"reportsto\", 700, 300, \"\");'>\n\t\t\t\t</td>\n\t\t\t\t<td>Home Phone</td>\n\t\t\t\t<td><input type='text' size='27' name='tell' value='{$tell}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Lead Source</td>\n\t\t\t\t<td>{$select_source}</td>\n\t\t\t\t<td>Other Phone</td>\n\t\t\t\t<td><input type=text size='27' name='tell_other' value='{$tell_other}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Title</td>\n\t\t\t\t<td><input type=text size=27 name=title value='{$title}'></td>\n\t\t\t\t<td>Fax</td>\n\t\t\t\t<td><input type=text size=27 name=fax value='{$fax}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Department</td>\n\t\t\t\t<td><input type=text size=27 name=department value='{$department}'></td>\n\t\t\t\t<td>E-mail</td>\n\t\t\t\t<td><input type=text size=27 name=email value='{$email}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>" . REQ . "Birthdate</td>\n\t\t\t\t<td>" . mkDateSelect("bf") . "</td>\n\t\t\t\t<td>Other E-mail</td>\n\t\t\t\t<td><input type=text size=27 name=email_other value='{$email_other}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Upload contact image</td>\n\t\t\t\t<td>\n\t\t\t\t\tYes <input type='radio' name='upload_img' value='yes' {$img_yes} />\n\t\t\t\t\tNo <input type='radio' name='upload_img' value='no' {$img_no} />\n\t\t\t\t</td>\n\t\t\t\t<td>Assistant</td>\n\t\t\t\t<td><input type='text' size='27' name='assistant' value='{$assistant}'></td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Team Permissions</td>\n\t\t\t\t<td>{$teams_sel}</td>\n\t\t\t\t<td>Assistant Phone</td>\n\t\t\t\t<td><input type=text size=27 name=assistant_phone value='{$assistant_phone}'></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t<p></p>\n\t\t<input type=submit value='Confirm &raquo;'>\n\t\t</form>\n\t\t<p>\n\t\t<table cellpadding='2' cellspacing='0' class='shtable'>\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='list_cons.php'>List contacts</a></td>\n\t\t\t</tr>\n\t\t</table>";
    return $get_data;
}
function slctDate()
{
    db_connect();
    #check what we have permission to
    $get_perm = "SELECT payroll_groups FROM users WHERE username = '******'USER_NAME']}' LIMIT 1";
    $run_perm = db_exec($get_perm) or errDie("Unable to get payroll groups permission information.");
    if (pg_numrows($run_perm) > 0) {
        $parr = pg_fetch_array($run_perm);
        if (strlen($parr['payroll_groups']) > 0) {
            $pay_grps = explode(",", $parr['payroll_groups']);
            if (is_array($pay_grps)) {
                $egsearch = " AND (emp_group = '" . implode("' OR emp_group = '", $pay_grps) . "')";
            }
        } else {
            $egsearch = "AND false";
        }
    }
    $sql = "SELECT enum,empnum, sname, fnames FROM employees WHERE div = '" . USER_DIV . "' {$egsearch} ORDER BY sname";
    $empRslt = db_exec($sql) or errDie("Unable to select employees from database.");
    if (pg_numrows($empRslt) < 1) {
        //	return "No employees found in database.<p>"
        //		.mkQuickLinks();
    }
    $employees = array("0" => "All");
    while ($d = pg_fetch_array($empRslt)) {
        $employees[$d["empnum"]] = "{$d['sname']}, {$d['fnames']} ({$d['enum']})";
    }
    $fields = array("empnum" => 0, "from_year" => DATE_YEAR, "from_month" => DATE_MONTH, "from_day" => 1, "to_year" => DATE_YEAR, "to_month" => DATE_MONTH, "to_day" => getDaysInMonth(DATE_MONTH, DATE_YEAR));
    foreach ($fields as $fname => $dflt) {
        if (!isset(${$fname})) {
            ${$fname} = $dflt;
        }
    }
    $get_egroups = "SELECT * FROM emp_groups ORDER BY emp_group";
    $run_egroups = db_exec($get_egroups) or errDie("Unable to get employee group information.");
    if (pg_numrows($run_egroups) < 1) {
        $emp_group_drop = "<input type='hidden' name='emp_group[]' value='0'>No Employee Groups Found.";
    } else {
        $emp_group_drop = "<select name='emp_group[]' multiple size='5'>";
        $emp_group_drop .= "<option value='0'>All</option>";
        while ($garr = pg_fetch_array($run_egroups)) {
            $emp_group_drop .= "<option value='{$garr['id']}'>{$garr['emp_group']}</option>";
        }
        $emp_group_drop .= "</select>";
    }
    db_connect();
    $get_years = "SELECT distinct (cyear) FROM salpaid ORDER BY cyear";
    $run_years = db_exec($get_years) or errDie("Unable to get salary processed years.");
    if (pg_numrows($run_years) < 1) {
        $sal_year_drop = "<input type='hidden' name='salyear' value='" . EMP_YEAR . "'>No Previously Processed Salaries Found.";
    } else {
        $sal_year_drop = "<select name='salyear'>";
        while ($sarr = pg_fetch_array($run_years)) {
            if ($sarr['cyear'] == EMP_YEAR) {
                $sal_year_drop .= "<option value='{$sarr['cyear']}' selected>{$sarr['cyear']}</option>";
            } else {
                $sal_year_drop .= "<option value='{$sarr['cyear']}'>{$sarr['cyear']}</option>";
            }
        }
        $sal_year_drop .= "</select>";
    }
    $OUT = "\n\t\t<h3>Select date range to view</h3>\n\t\t<form action='" . SELF . "' method='POST'>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<input type='hidden' name='key' value='slip'>\n\t\t\t<tr>\n\t\t\t\t<th>Employee</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'>" . extlib_cpsel("empnum", $employees, $empnum) . "</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<th>Employee Group</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'>{$emp_group_drop}</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<th colspan='2'>Date Range</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'  colspan='2'>\n\t\t\t\t\t" . mkDateSelect("from", $from_year, $from_month, $from_day) . "\n\t\t\t\t\t&nbsp;&nbsp;&nbsp;TO&nbsp;&nbsp;&nbsp;\n\t\t\t\t\t" . mkDateSelect("to", $to_year, $to_month, $to_day) . "\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<th>Select Salary Financial Year</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'>{$sal_year_drop}</td>\n\t\t\t</tr>\n\t\t    <tr>\n\t\t    \t<td colspan='2' align='right'><input type='submit' value='View &raquo;'></td>\n\t\t    </tr>\n\t    </table>\n\t    </form>" . mkQuickLinks();
    return $OUT;
}
function details($_POST, $error = "")
{
    # get vars
    extract($_POST);
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($purid, "num", 1, 20, "Invalid Non-Stock Order number.");
    # display errors, if any
    if ($v->isError()) {
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $error .= "<li class='err'>" . $e["msg"] . "</li>";
        }
        $confirm .= "{$error}<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirm;
    }
    # Get Order info
    db_connect();
    $sql = "SELECT * FROM nons_purchases WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'";
    $purRslt = db_exec($sql) or errDie("Unable to get Order information");
    if (pg_numrows($purRslt) < 1) {
        return "<li class='err'>purchase Not Found</li>";
    }
    $pur = pg_fetch_array($purRslt);
    # check if Order has been printed
    if ($pur['received'] == "y") {
        $error = "<li class='err'> Error : Order number <b>{$purid}</b> has already been received.</li>";
        $error .= "<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $error;
    }
    /* --- Start Drop Downs --- */
    # days drop downs
    $days = array("30" => "30", "60" => "60", "90" => "90", "120" => "120");
    $termssel = extlib_cpsel("terms", $days, $pur['terms']);
    # format date
    list($pyear, $pmon, $pday) = explode("-", $pur['pdate']);
    /* --- End Drop Downs --- */
    /* --- Start Products Display --- */
    # select all products
    $products = "\n\t\t\t\t\t<table " . TMPL_tblDflts . " width='100%'>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th>ITEM NUMBER</th>\n\t\t\t\t\t\t\t<th>DESCRIPTION</th>\n\t\t\t\t\t\t\t<th>QTY</th>\n\t\t\t\t\t\t\t<th>UNIT PRICE</th>\n\t\t\t\t\t\t\t<th>DELIVERY DATE</th>\n\t\t\t\t\t\t\t<th>AMOUNT</th>\n\t\t\t\t\t\t<tr>";
    # get selected stock in this Order
    db_connect();
    $sql = "SELECT * FROM nons_pur_items  WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'";
    $stkdRslt = db_exec($sql);
    $i = 0;
    $key = 0;
    while ($stkd = pg_fetch_array($stkdRslt)) {
        # keep track of selected stock amounts
        $amts[$i] = $stkd['amt'];
        $i++;
        list($syear, $smon, $sday) = explode("-", $stkd['ddate']);
        # put in product
        $products .= "\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>{$stkd['cod']}</td>\n\t\t\t\t\t\t\t<td>{$stkd['des']}</td>\n\t\t\t\t\t\t\t<td>{$stkd['qty']}</td>\n\t\t\t\t\t\t\t<td nowrap>" . CUR . " {$stkd['unitcost']}</td>\n\t\t\t\t\t\t\t<td>{$sday}-{$smon}-{$syear}</td>\n\t\t\t\t\t\t\t<td nowrap>" . CUR . " {$stkd['amt']}</td>\n\t\t\t\t\t\t</tr>";
        $key++;
    }
    # look above(if i = 0 then there are no products)
    if ($i == 0) {
        $done = "";
    }
    $products .= "</table>";
    /* --- End Products Display --- */
    /* --- Start Some calculations --- */
    # Get subtotal
    $SUBTOT = $pur['subtot'];
    # Get Total
    $TOTAL = $pur['total'];
    # Get vat
    $VAT = $pur['vat'];
    /* --- End Some calculations --- */
    /* -- Final Layout -- */
    $details = "\n\t\t\t\t\t<center>\n\t\t\t\t\t<h3>Non-Stock Order Cancel</h3>\n\t\t\t\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t\t\t\t\t<input type='hidden' name='key' value='update'>\n\t\t\t\t\t\t<input type='hidden' name='purid' value='{$purid}'>\n\t\t\t\t\t<table " . TMPL_tblDflts . " width='95%'>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td valign='top'>\n\t\t\t\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<th colspan='2'> Supplier Details </th>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Supplier</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center'>{$pur['supplier']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Account number</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center'><pre>{$pur['supaddr']}</pre></td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td valign='top' align='right'>\n\t\t\t\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<th colspan='2'> Non-Stock Order Details </th>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Non-Stock Order No.</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center'>{$pur['purnum']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Delivery Ref No.</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center'>{$pur['refno']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Terms</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center'>{$pur['terms']} Days</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Date</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center'>{$pday}-{$pmon}-{$pyear}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>VAT Inclusive</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center'>{$pur['vatinc']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Delivery Charges</td>\n\t\t\t\t\t\t\t\t\t\t<td valign='center' nowrap>" . CUR . " {$pur['shipchrg']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\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 colspan='2'>{$products}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<th width='40%'>Quick Links</th>\n\t\t\t\t\t\t\t\t\t\t<th width='45%'>Remarks</th>\n\t\t\t\t\t\t\t\t\t\t<td rowspan='5' valign='top' width='15%'><br></td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td class='" . bg_class() . "'><a href='nons-purchase-new.php'>New Non-Stock Order</a></td>\n\t\t\t\t\t\t\t\t\t\t<td class='" . bg_class() . "' rowspan='4' align='center' valign='top'>" . nl2br($pur['remarks']) . "</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td><a href='nons-purchase-view.php'>View Non-Stock Orders</a></td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td align=right>\n\t\t\t\t\t\t\t\t<table " . TMPL_tblDflts . " width='80%'>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>SUBTOTAL</td>\n\t\t\t\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$pur['subtot']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>Delivery Charges</td>\n\t\t\t\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$pur['shipchrg']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<td>VAT @ " . TAX_VAT . " %</td>\n\t\t\t\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$pur['vat']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t\t\t\t<th>GRAND TOTAL</th>\n\t\t\t\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$pur['total']}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td align='right'><input type='button' value='&laquo Back' onClick='javascript:history.back()'> | <input type='submit' name='upBtn' value='Write'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t\t</form>\n\t\t\t\t\t</center>";
    return $details;
}
Ejemplo n.º 27
0
function get_data($_GET, $errs = "")
{
    extract($_GET);
    # 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"] . "</li>";
        }
        $confirmCust .= "<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirmCust;
    }
    db_conn('crm');
    $user = USER_NAME;
    # write to db
    $Sql = "SELECT * FROM leads WHERE ((id='{$id}')and ((con='Yes' and by='{$user}' AND div = '" . USER_DIV . "') or(con='No' AND div = '" . USER_DIV . "')))";
    $Rslt = db_exec($Sql) or errDie("Unable to access database.");
    if (pg_numrows($Rslt) < 1) {
        return "Lead not Found";
    }
    $Data = pg_fetch_array($Rslt);
    $date = $Data['date'];
    $mon = substr($date, 5, 2);
    if ($mon == 1) {
        $td = 31;
        $M = 'January';
    }
    if ($mon == 2) {
        $td = 28;
        $M = 'February';
    }
    if ($mon == 3) {
        $td = 31;
        $M = 'March';
    }
    if ($mon == 4) {
        $td = 30;
        $M = 'April';
    }
    if ($mon == 5) {
        $td = 31;
        $M = 'May';
    }
    if ($mon == 6) {
        $td = 30;
        $M = 'June';
    }
    if ($mon == 7) {
        $td = 31;
        $M = 'July';
    }
    if ($mon == 8) {
        $td = 31;
        $M = 'August';
    }
    if ($mon == 9) {
        $td = 30;
        $M = 'September';
    }
    if ($mon == 10) {
        $td = 31;
        $M = 'October';
    }
    if ($mon == 11) {
        $td = 30;
        $M = 'November';
    }
    //and substr(date,7,4)='$year'
    if ($mon == 12) {
        $td = 31;
        $M = 'December';
    }
    $Day = substr($date, 8, 2);
    $Day = $Day + 0;
    $Year = substr($date, 0, 4);
    $Date = $Day . " " . $M . " " . " " . $Year;
    $hadd = $Data['hadd'];
    $padd = $Data['padd'];
    if ($Data["con"] == "No") {
        $Cons = "\r\n\t\t\t<select size='1' name='Con'>\r\n\t\t\t\t<option value='No' selected>No</option>\r\n\t\t\t\t<option value='Yes'>Yes</option>\r\n\t\t\t</select>";
    } else {
        $Cons = "\r\n\t\t\t<select size='1' name='Con'>\r\n\t\t\t\t<option value='No'>No</option>\r\n\t\t\t\t<option value='Yes' selected>Yes</option>\r\n\t\t\t</select>";
    }
    extract($Data);
    $select_source = extlib_cpsel("lead_source", crm_get_leadsrc(-1), $lead_source);
    list($bf_year, $bf_month, $bf_day) = explode("-", $birthdate);
    $birthdate_description = date("d F Y", mktime(0, 0, 0, $bf_day, $bf_month, $bf_year));
    $select_bfday = "<select name='bf_day'>";
    for ($i = 1; $i <= 31; $i++) {
        if ($bf_day == $i) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $select_bfday .= "<option {$sel} value='{$i}'>{$i}</option>";
    }
    $select_bfday .= "</select>";
    $select_bfmonth = "<select name='bf_month'>";
    for ($i = 1; $i <= 12; $i++) {
        if ($bf_month == $i) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $select_bfmonth .= "<option {$sel} value='{$i}'>" . date("F", mktime(0, 0, 0, $i, 1, 2000)) . "</option>";
    }
    $select_bfmonth .= "</select>";
    $select_bfyear = "<select name='bf_year'>";
    for ($i = 1971; $i <= 2027; $i++) {
        if ($bf_year == $i) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $select_bfyear .= "<option {$sel} value='{$i}'>{$i}</option>";
    }
    $select_bfyear .= "</select>";
    $genders = array("Male", "Female");
    $select_gender = "<select name='gender'>";
    foreach ($genders as $val) {
        if ($val == $gender) {
            $selected = "selected";
        } else {
            $selected = "";
        }
        $select_gender .= "<option value='{$val}' {$selected}>{$val}</option>";
    }
    $select_gender .= "</select>";
    // Sales people
    db_conn("exten");
    $sql = "SELECT * FROM salespeople WHERE div='" . USER_DIV . "' ORDER BY salesp ASC";
    $rslt = db_exec($sql) or errDie("Unable to retrieve sales people from Cubit.");
    $salespn_out = "<select name='salespn'>";
    while ($salespn_data = pg_fetch_array($rslt)) {
        if ($salespid == $salespn_data["salespid"]) {
            $selected = "selected";
        } else {
            $selected = "";
        }
        $salespn_out .= "<option value='{$salespn_data['salespid']}' {$selected}>{$salespn_data['salesp']}</option>";
    }
    $salespn_out .= "</select>";
    // Next Contact Date
    if (!empty($ncdate)) {
        $ncdate = explode("-", $ncdate);
    } else {
        $ncdate[0] = $ncdate[1] = $ncdate[2] = "";
    }
    // Create the teams dropdown
    $sql = "SELECT * FROM crm.teams ORDER BY name ASC";
    $team_rslt = db_exec($sql) or errDie("Unable to retrieve teams.");
    $teams_sel = "<select name='team_id'>";
    $teams_sel .= "<option value='0'>[None]</option>";
    while ($team_data = pg_fetch_array($team_rslt)) {
        if ($team_id == $team_data["id"]) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $teams_sel .= "<option value='{$team_data['id']}'>{$team_data['name']}</option>";
    }
    $teams_sel .= "</select>";
    $get_data = "\r\n\t\t<h3>Modify Lead</h3>\r\n\t\t<br>\r\n\t\t<table " . TMPL_tblDflts . ">\r\n\t\t<form action='" . SELF . "' name='frm_con' method='POST'>\r\n\t\t\t<input type='hidden' name='key' value='confirm'>\r\n\t\t\t<input type='hidden' name='id' value='{$id}'>\r\n\t\t\t{$errs}\r\n\t\t\t<tr>\r\n\t\t\t\t<th colspan='4'>Lead Information</th>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td width='120'>First Name</td>\r\n\t\t\t\t<td width='210'><input type='text' size='27' name='name' value='{$name}'></td>\r\n\t\t\t\t<td width='120'>Office Phone</td>\r\n\t\t\t\t<td width='210'><input type='text' size='27' name='tell_office' value='{$tell_office}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>" . REQ . "Company/Last Name</td>\r\n\t\t\t\t<td><input type='text' size='27' name='surname' value='{$surname}'></td>\r\n\t\t\t\t<td>Mobile</td>\r\n\t\t\t\t<td><input type='text' size='27' name='cell' value='{$cell}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Team Permissions</td>\r\n\t\t\t\t<td>{$teams_sel}</td>\r\n\t\t\t\t<td>Home Phone</td>\r\n\t\t\t\t<td><input type='text' size='27' name='tell' value='{$tell}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Lead Source</td>\r\n\t\t\t\t<td>{$select_source}</td>\r\n\t\t\t\t<td>Other Phone</td>\r\n\t\t\t\t<td><input type='text' size='27' name='tell_other' value='{$tell_other}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Title</td>\r\n\t\t\t\t<td><input type='text' size='27' name='title' value='{$title}'></td>\r\n\t\t\t\t<td>Fax</td>\r\n\t\t\t\t<td><input type='text' size='27' name='fax' value='{$fax}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Department</td>\r\n\t\t\t\t<td><input type='text' size='27' name='department' value='{$department}'></td>\r\n\t\t\t\t<td>E-mail</td>\r\n\t\t\t\t<td><input type='text' size='27' name='email' value='{$email}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Birthdate</td>\r\n\t\t\t\t<td>{$select_bfday} {$select_bfmonth} {$select_bfyear}</td>\r\n\t\t\t\t<td>Other E-mail</td>\r\n\t\t\t\t<td><input type='text' size='27' name='email_other' value='{$email_other}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td rowspan='2'>Account Name</td>\r\n\t\t\t\t<td rowspan='2'>\r\n\t\t\t\t\t<table>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<input type='text' readonly='yes' size='27' name='accountname' value='{$accountname}'>\r\n\t\t\t\t\t\t\t\t<input type='hidden' name='account_id' value='{$account_id}'>\r\n\t\t\t\t\t\t\t\t<input type='hidden' name='account_type' value='{$account_type}'>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td align='center'>\r\n\t\t\t\t\t\t\t\t<input type='button' value='Customer' onClick='popupSized(\"../customers-view.php?action=contact_acc\", \"leadacc\", 700, 450, \"\");'><br>\r\n\t\t\t\t\t\t\t\t<input type='button' value='Supplier' onClick='popupSized(\"../supp-view.php?action=contact_acc\", \"leadacc\", 700, 300, \"\");'>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</td>\r\n\t\t\t\t<td>Assistant</td>\r\n\t\t\t\t<td><input type='text' size='27' name='assistant' value='{$assistant}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Assistant Phone</td>\r\n\t\t\t\t<td><input type='text' size='27' name='assistant_phone' value='{$assistant_phone}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Religion</td>\r\n\t\t\t\t<td><input type='text' size='27' name='religion' value='{$religion}'></td>\r\n\t\t\t\t<td>Website</td>\r\n\t\t\t\t<td><input type='text' size='27' name='website' value='{$website}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Race</td>\r\n\t\t\t\t<td><input type='text' size='27' name='race' value='{$race}'></td>\r\n\t\t\t\t<td>Next Contact Date</td>\r\n\t\t\t\t<td>" . mkDateSelect("ncdate", $ncdate[0], $ncdate[1], $ncdate[2]) . "</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Gender</td>\r\n\t\t\t\t<td>{$select_gender}</td>\r\n\t\t\t\t<td>Sales Person</td>\r\n\t\t\t\t<td>{$salespn_out}</td>\r\n\t\t\t\t</tr>\r\n\t\t\t<tr><td>&nbsp;</td></tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<th colspan='2'>Physical Address</th>\r\n\t\t\t\t<th colspan='2'>Postal Address</th>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td colspan='2' align='center'><textarea name='hadd' rows='4' cols='35'>{$hadd}</textarea></td>\r\n\t\t\t\t<td colspan='2' align='center'><textarea name='padd' rows='4' cols='35'>{$padd}</textarea></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>City</td>\r\n\t\t\t\t<td><input type='text' size='27' name='padd_city' value='{$padd_city}'></td>\r\n\t\t\t\t<td>City</td>\r\n\t\t\t\t<td><input type='text' size='27' name='hadd_city' value='{$hadd_city}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>State/Province</td>\r\n\t\t\t\t<td><input type='text' size='27' name='padd_state' value='{$padd_state}'></td>\r\n\t\t\t\t<td>State/Province</td>\r\n\t\t\t\t<td><input type='text' size='27' name='hadd_state' value='{$hadd_state}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Postal Code</td>\r\n\t\t\t\t<td><input type='text' size='27' name='padd_code' value='{$padd_code}'></td>\r\n\t\t\t\t<td>Postal Code</td>\r\n\t\t\t\t<td><input type='text' size='27' name='hadd_code' value='{$hadd_code}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Country</td>\r\n\t\t\t\t<td><input type='text' size='27' name='padd_country' value='{$padd_country}'></td>\r\n\t\t\t\t<td>Country</td>\r\n\t\t\t\t<td><input type='text' size='27' name='hadd_country' value='{$hadd_country}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr><td>&nbsp;</td></tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<th colspan='2'>Description</th>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td colspan='2' align='center'><textarea name='description' rows='4' cols='35'>{$description}</textarea></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr><td>&nbsp;</td></tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<th colspan='2'>Options</th>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Private</td>\r\n\t\t\t\t<td align='center'>{$Cons}</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<td colspan='2' align='right'><input type='submit' value='Confirm &raquo;'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>State/Province</td>\r\n\t\t\t\t<td><input type='text' size='27' name='padd_state' value='{$padd_state}'></td>\r\n\t\t\t\t<td>State/Province</td>\r\n\t\t\t\t<td><input type='text' size='27' name='hadd_state' value='{$hadd_state}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Postal Code</td>\r\n\t\t\t\t<td><input type='text' size='27' name='padd_code' value='{$padd_code}'></td>\r\n\t\t\t\t<td>Postal Code</td>\r\n\t\t\t\t<td><input type='text' size='27' name='hadd_code' value='{$hadd_code}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Country</td>\r\n\t\t\t\t<td><input type='text' size='27' name='padd_country' value='{$padd_country}'></td>\r\n\t\t\t\t<td>Country</td>\r\n\t\t\t\t<td><input type='text' size='27' name='hadd_country' value='{$hadd_country}'></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr><td>&nbsp;</td></tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<th colspan='2'>Description</th>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td colspan='2' align='center'><textarea name='description' rows='4' cols='35'>{$description}</textarea></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr><td>&nbsp;</td></tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<th colspan='2'>Options</th>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td>Private</td>\r\n\t\t\t\t<td align='center'>{$Cons}</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<td colspan='2' align='right'><input type='submit' value='Confirm &raquo;'></td>\r\n\t\t\t</tr>\r\n\t\t</form>\r\n\t\t</table>\r\n\t\t<p>\r\n\t\t<table " . TMPL_tblDflts . ">\r\n\t\t\t<tr>\r\n\t\t\t\t<th>Quick Links</th>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td><a href='leads_list.php'>List leads</a></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t<td><a href='../main.php'>Main Menu</a></td>\r\n\t\t\t</tr>\r\n\t\t</table>";
    return $get_data;
}
function editAccnt($bankid)
{
    # validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($bankid, "num", 1, 4, "Invalid Bank Account ID.");
    # 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 bankacct WHERE bankid='{$bankid}' AND div = '" . USER_DIV . "'";
    $bankRslt = db_exec($sql) or errDie("ERROR: Unable to retrieve bank account details from database.", SELF);
    $numrows = pg_numrows($bankRslt);
    if ($numrows < 1) {
        $OUTPUT = "<li> - Invalid Bank account ID.";
        return $OUTPUT;
    }
    $accnt = pg_fetch_array($bankRslt);
    if (strlen($accnt['accname']) < 20) {
        $size = 20;
    } else {
        $size = strlen($accnt['accname']);
    }
    // Get Bank account [the traditional way re: hook of hook]
    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.";
    }
    $bank = pg_fetch_array($Rslt);
    $bankaccid = $bank["accnum"];
    # Check account balance
    $sql = "SELECT * FROM trial_bal WHERE period='" . PRD_DB . "' AND accid = '{$bankaccid}' AND debit > 0 OR accid = '{$bankaccid}' AND credit > 0";
    $accRslt = db_exec($sql);
    if (pg_numrows($accRslt) > 0) {
        $acc = pg_fetch_array($accRslt);
        $account = "<input type=hidden name='glacc' value='{$acc['accid']}'>{$acc['accname']}";
    } else {
        core_connect();
        # income accounts ($inc)
        $account = "<select name='glacc'>";
        $sql = "SELECT * FROM accounts WHERE acctype ='B'";
        $accRslt = db_exec($sql);
        $numrows = pg_numrows($accRslt);
        if (empty($numrows)) {
            return "<li> - There are no accounts yet in Cubit. Please set up accounts first.";
        }
        while ($acc = pg_fetch_array($accRslt)) {
            if ($acc['accid'] == $bankaccid) {
                $sal = "selected";
            } else {
                $sal = "";
            }
            $account .= "<option value='{$acc['accid']}' {$sal}>{$acc['accname']}</option>";
        }
        $account .= "</select>";
    }
    $cardname = "";
    $chm = "";
    $chv = "";
    $cho = "";
    if ($accnt['cardtype'] == 'Visa') {
        $chv = "checked=yes";
    } elseif ($accnt['cardtype'] == 'Mastercard') {
        $chm = "checked=yes";
    } else {
        $cho = "checked=yes";
        $cardname = $accnt['cardtype'];
    }
    db_connect();
    # Locations drop down
    $locs = array("loc" => "Local", "int" => "International");
    $locsel = extlib_cpsel("loc", $locs, $accnt['btype']);
    # currency drop down
    $currsel = ext_unddbsel("fcid", "currency", "fcid", "descrip", "There are is no currency found in Cubit, please add currency first.", $accnt['fcid']);
    // Set up table to display in
    $OUTPUT = "\n\t<h3>Edit Bank Account</h3>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t<form action='" . SELF . "' method=post name=form>\n\t<input type=hidden name=key value=confirm>\n\t<input type=hidden name=bankid value={$bankid}>\n\t<tr><th>Field</th><th>Value</th></tr>\n\t<tr class='bg-odd'><td>Type of Account</td><td valign=center><input type=hidden size=20 name=acctype value='{$accnt['acctype']}'>{$accnt['acctype']}</td></tr>\n\t<tr class='bg-even'><td>Bank Name</td><td valign=center><input type=text size=20 name=bankname value='{$accnt['bankname']}'></td></tr>\n\t<tr class='bg-odd'><td>Type</td><td>{$locsel}</td></tr>\n\t<tr class='bg-even'><td>Currency</td><td>{$currsel}</td></tr>\n\t<tr class='bg-odd'><td>Branch Name</td><td valign=center><input type=text size=20 name=branchname value='{$accnt['branchname']}'></td></tr>\n\t<tr class='bg-even'><td>Branch Code</td><td valign=center><input type=text size=20 name=branchcode value='{$accnt['branchcode']}'></td></tr>\n\t<tr class='bg-odd'><td>Account Name</td><td valign=center><input type=text size='{$size}' name=accname  value='{$accnt['accname']}'></td></tr>\n\t<tr class='bg-even'><td>Account Number</td><td valign=center><input type=text name=accnum  value='{$accnt['accnum']}'></td></tr>\n\t<tr class='bg-odd'><td>Ledger Account</td><td valign=center>{$account}</td></tr>\n\t<tr class='bg-even'><td>Card Number</td><td ><input type=text size=25 name=cardnum maxlength=16 value='{$accnt['cardnum']}'></td></tr>\n\t<tr class='bg-odd'><td>Expiry Date</td><td><input type=text size=2 name=mon maxlength=2 value='{$accnt['mon']}'>-<input type=text size=4 name=year maxlength=4 value='{$accnt['year']}'>MM-YYYY</td></tr>\n\t<tr class='bg-even'><td>Last 3 Digits at back of Card</td><td ><input type=text size=3 maxlength=3 name=lastdigits value='{$accnt['digits']}'></td></tr>\n\t<tr class='bg-odd'><td>Card Type</td><td><input type=radio name=cardtyp value=Visa {$chv}>Visa &nbsp;&nbsp; <input type=radio name=cardtyp value='Mastercard' {$chm}> Mastercard &nbsp;&nbsp;&nbsp;<input type=radio name=cardtyp value='other' {$cho}>Other: <input type=text name=cardname value='{$cardname}'></td>\n\t<tr class='bg-even'><td>Details</td><td valign=center><textarea cols=20 rows=5 name=details>{$accnt['details']}</textarea></td></tr>\n\t<tr><td><input type=button value='< Cancel' onClick='javascript:history.back();'></td><td valign=center><input type=submit value='Confirm >'></td></tr>\n\t</form>\n\t</table>\n\t<p>\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\n\t\t\t<tr><th>Quick Links</th></tr>\n\t\t<tr class='bg-odd'><td><a href='bankacct-view.php'>View Bank Accounts</a></td></tr>\n\t\t\t<tr class='bg-odd'><td><a href='../main.php'>Main Menu</a></td></tr>\n\t</table>";
    // all template to display the info and die
    require "../template.php";
}
function details($_POST, $error = "")
{
    # get vars
    extract($_POST);
    # Validate input
    require_lib("validate");
    $v = new validate();
    $v->isOk($purid, "num", 1, 20, "Invalid Non-Stock Purchase number.");
    if (isset($ctyp) && $ctyp == 's') {
        $v->isOk($supid, "num", 1, 20, "Invalid supplier account number.");
    } elseif (isset($ctyp) && $ctyp == 'c') {
        $v->isOk($deptid, "num", 1, 20, "Invalid Department.");
    }
    # display errors, if any
    if ($v->isError()) {
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $error .= "<li class='err'>" . $e["msg"] . "</li>";
        }
        return slct($_POST, $error);
        $confirm = "{$error}<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $confirm;
    }
    # Get purchase info
    db_connect();
    $sql = "SELECT * FROM nons_purchases WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'";
    $purRslt = db_exec($sql) or errDie("Unable to get purchase information");
    if (pg_numrows($purRslt) < 1) {
        return "<li class='err'>purchase Not Found</li>";
    }
    $pur = pg_fetch_array($purRslt);
    # check if purchase has been printed
    if ($pur['received'] == "y") {
        $error = "<li class='err'> Error : purchase number <b>{$purid}</b> has already been received.</li>";
        $error .= "<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $error;
    }
    /* --- Start Drop Downs --- */
    # days drop downs
    $days = array("30" => "30", "60" => "60", "90" => "90", "120" => "120");
    $termssel = extlib_cpsel("terms", $days, $pur['terms']);
    # format date
    list($p_year, $p_month, $p_day) = explode("-", $pur['pdate']);
    $supacc = "<select name='supacc'>";
    core_connect();
    $sql = "SELECT * FROM accounts WHERE div = '" . USER_DIV . "' ORDER BY accname ASC";
    $accRslt = db_exec($sql);
    if (pg_numrows($accRslt) < 1) {
        return "<li>There are No accounts in Cubit.</li>";
    }
    while ($acc = pg_fetch_array($accRslt)) {
        # Check Disable
        if (isDisabled($acc['accid'])) {
            continue;
        }
        $supacc .= "<option value='{$acc['accid']}'>{$acc['topacc']}/{$acc['accnum']} - {$acc['accname']}</option>";
    }
    $supacc .= "</select>";
    # Get selected supplier info
    db_connect();
    $hide = "";
    if (isset($ctyp) && $ctyp == 's') {
        $sql = "SELECT * FROM suppliers WHERE supid = '{$supid}' AND div = '" . USER_DIV . "'";
        $supRslt = db_exec($sql) or errDie("Unable to get supplier");
        if (pg_numrows($supRslt) < 1) {
            $error = "<li class='err'> Supplier not Found.</li>";
            $confirm .= "{$error}<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
            return $confirm;
        } else {
            $sup = pg_fetch_array($supRslt);
            $pur['supplier'] = $sup['supname'];
            $pur['supaddr'] = $sup['supaddr'];
            $supacc = $sup['supno'];
            $hide = "<input type='hidden' name='supid' value='{$supid}'><input type='hidden' name='ctyp' value='{$ctyp}'>";
        }
    } elseif (isset($ctyp) && $ctyp == 'c') {
        db_conn("exten");
        $sql = "SELECT * FROM departments WHERE deptid = '{$deptid}'";
        $deptRslt = db_exec($sql) or errDie("Unable to view customers");
        if (pg_numrows($deptRslt) < 1) {
            $error = "<li class='err'> Department not Found.</li>";
            $confirm .= "{$error}<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
            return $confirm;
        } else {
            $dept = pg_fetch_array($deptRslt);
            $supacc = "{$dept['deptname']} - Cash on Hand";
            $hide = "<input type='hidden' name='deptid' value='{$deptid}'><input type='hidden' name='ctyp' value='{$ctyp}'>";
        }
    } elseif (isset($ctyp) && $ctyp == 'p') {
        core_connect();
        # Get Petty cash account
        $cashacc = gethook("accnum", "bankacc", "name", "Petty Cash");
        # Get account name for thy lame User's Sake
        $accRslt = get("core", "*", "accounts", "accid", $cashacc);
        if (pg_numrows($accRslt) < 1) {
            return "<li class='err'> Petty Cash Account not found.</li>";
        }
        $acc = pg_fetch_array($accRslt);
        $supacc = "{$acc['topacc']}/{$acc['accnum']} - {$acc['accname']}";
        $hide = "<input type='hidden' name='supacc' value='{$cashacc}'><input type='hidden' name='ctyp' value='{$ctyp}'>";
    }
    /* --- End Drop Downs --- */
    /* --- Start Products Display --- */
    # select all products
    $products = "\n\t\t<table " . TMPL_tblDflts . " width='100%'>\n\t\t\t<tr>\n\t\t\t\t<th>ITEM NUMBER</th>\n\t\t\t\t<th>DESCRIPTION</th>\n\t\t\t\t<th>QTY RECEIVED</th>\n\t\t\t\t<th>UNIT PRICE</th>\n\t\t\t\t<th>DELIVERY DATE</th>\n\t\t\t\t<th>AMOUNT</th>\n\t\t\t<tr>";
    # get selected stock in this purchase
    db_connect();
    $sql = "SELECT *, (qty - rqty) as qty FROM nons_pur_items  WHERE purid = '{$purid}' AND (qty - rqty) > 0 AND div = '" . USER_DIV . "'";
    $stkdRslt = db_exec($sql);
    $i = 0;
    $key = 0;
    while ($stkd = pg_fetch_array($stkdRslt)) {
        # keep track of selected stock amounts
        $amts[$i] = $stkd['amt'];
        $i++;
        list($syear, $smon, $sday) = explode("-", $stkd['ddate']);
        # put in product
        $products .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><input type='hidden' size='4' name='cod[]' value='{$stkd['cod']}'>{$stkd['cod']}</td>\n\t\t\t\t<td>{$stkd['des']}</td>\n\t\t\t\t<td><input type='hidden' name='qts[]' value='{$stkd['qty']}'><input type='text' size='5' name='qtys[]' value='{$stkd['qty']}'></td>\n\t\t\t\t<td nowrap><input type='hidden' size='4' name='unitcost[]' value='{$stkd['unitcost']}'>" . CUR . " {$stkd['unitcost']}</td>\n\t\t\t\t<td>{$sday}-{$smon}-{$syear}</td>\n\t\t\t\t<td nowrap>" . CUR . " {$stkd['amt']}</td>\n\t\t\t</tr>";
        $key++;
    }
    # look above(if i = 0 then there are no products)
    if ($i == 0) {
        $done = "";
    }
    $products .= "</table>";
    /* --- End Products Display --- */
    /* --- Start Some calculations --- */
    # Get subtotal
    $SUBTOT = sprint($pur['subtot']);
    # Get Total
    $TOTAL = sprint($pur['total']);
    # Get vat
    $VAT = sprint($pur['vat']);
    /* --- End Some calculations --- */
    /* -- Final Layout -- */
    $details = "\n\t\t<center>\n\t\t<h3>Non-Stock Purchase received</h3>\n\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t<input type='hidden' name='key' value='update'>\n\t\t<input type='hidden' name='purid' value='{$purid}'>\n\t\t<input type='hidden' name='shipchrg' value='0'>\n\t\t{$hide}\n\t\t<table " . TMPL_tblDflts . " width='95%'>\n\t\t\t<tr>\n\t\t\t\t<td valign='top'>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th colspan='2'> Supplier Details </th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Supplier</td>\n\t\t\t\t\t\t\t<td valign='center'>{$pur['supplier']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Supplier Address</td>\n\t\t\t\t\t\t\t<td valign='center'><pre>{$pur['supaddr']}</pre></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "' " . ass("Select the account you wish to Credit") . ">\n\t\t\t\t\t\t\t<td>Account</td>\n\t\t\t\t\t\t\t<td>{$supacc}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td valign='top' align='right'>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th colspan='2'> Non-Stock Purchase Details </th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Non-Stock Purchase No.</td>\n\t\t\t\t\t\t\t<td valign='center'>{$pur['purnum']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Delivery Ref No.</td>\n\t\t\t\t\t\t\t<td valign='center'><input type='text' name='refno' size='10' value='{$pur['refno']}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Terms</td>\n\t\t\t\t\t\t\t<td valign='center'>{$pur['terms']} Days</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Date</td>\n\t\t\t\t\t\t\t<td valign='center'>" . mkDateSelect("p", $p_year, $p_month, $p_day) . "</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>VAT Inclusive</td>\n\t\t\t\t\t\t\t<td valign='center'>{$pur['vatinc']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</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 colspan='2'>{$products}</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<p>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th width='25%'>Quick Links</th>\n\t\t\t\t\t\t\t<th width='25%'>Remarks</th>\n\t\t\t\t\t\t\t<td rowspan='5' valign='top' width='50%'>{$error}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td class='" . bg_class() . "'><a href='nons-purchase-new.php'>New purchase</a></td>\n\t\t\t\t\t\t\t<td class='" . bg_class() . "' rowspan='4' align='center' valign='top'><textarea name='remarks' rows='4' cols='20'>{$pur['remarks']}</textarea></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td><a href='nons-purchase-view.php'>View purchases</a></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td align='right'>\n\t\t\t\t\t<table " . TMPL_tblDflts . " width='80%'>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>SUBTOTAL</td>\n\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$SUBTOT}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>VAT @ " . TAX_VAT . " %</td>\n\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$pur['vat']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<th>GRAND TOTAL</th>\n\t\t\t\t\t\t\t<td align='right' nowrap>" . CUR . " {$TOTAL}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td align='right'><input type='submit' name='upBtn' value='Write'></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t</form>\n\t\t</center>";
    return $details;
}
function details($_POST, $error = "")
{
    # get vars
    extract($_POST);
    # validate input
    require_lib("validate");
    $v = new validate();
    if (isset($purid)) {
        $v->isOk($purid, "num", 1, 20, "Invalid Non-Stock Order number.");
    } else {
        $v->isOk($supid, "num", 1, 20, "Invalid Supplier number.");
    }
    # display errors, if any
    if ($v->isError()) {
        $errors = $v->getErrors();
        foreach ($errors as $e) {
            $error .= "<li class='err'>" . $e["msg"] . "</li>";
        }
        $confirm = $error . slct();
        return $confirm;
    }
    if (!isset($purid)) {
        $purid = create_dummy(0, $supid);
    }
    # Get Order info
    db_connect();
    $sql = "SELECT * FROM nons_purch_int WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'";
    $purRslt = db_exec($sql) or errDie("Unable to get Order information");
    if (pg_numrows($purRslt) < 1) {
        return "<li class='err'>purchase Not Found</li>";
    }
    $pur = pg_fetch_array($purRslt);
    # check if Order has been printed
    if ($pur['received'] == "y") {
        $error = "<li class='err'> Error : Order number <b>{$purid}</b> has already been received.</li>";
        $error .= "<p><input type='button' onClick='JavaScript:history.back();' value='&laquo; Correct submission'>";
        return $error;
    }
    if ($pur['xrate'] == 0) {
        $pur['xrate'] = 1;
    }
    # Get selected supplier info
    db_connect();
    $sql = "SELECT * FROM suppliers WHERE supid = '{$pur['supid']}' AND div = '" . USER_DIV . "'";
    $supRslt = db_exec($sql) or errDie("Unable to view Supplier");
    if (pg_numrows($supRslt) < 1) {
        db_connect();
        # Query server for supplier info
        $sql = "SELECT * FROM suppliers WHERE location = 'int' AND div = '" . USER_DIV . "' ORDER BY supname ASC";
        $supRslt = db_exec($sql) or errDie("Unable to view suppliers");
        if (pg_numrows($supRslt) < 1) {
            $err = "<li class='err'>No Supplier found in database.</li>";
            return view_err($_POST, $err);
        } else {
            $suppliers = "<select name='supid' onChange='javascript:document.form.submit();'>";
            $suppliers .= "<option value='-S' selected>Select Supplier</option>";
            while ($sup = pg_fetch_array($supRslt)) {
                $suppliers .= "<option value='{$sup['supid']}'>{$sup['supname']}</option>";
            }
            $suppliers .= "</select>";
        }
        # take care of the uset vars
        $supaddr = "";
        $accno = "";
        $fcid = $pur['fcid'];
    } else {
        db_connect();
        # Query server for supplier info
        $sql = "SELECT * FROM suppliers WHERE location = 'int' AND div = '" . USER_DIV . "' ORDER BY supname ASC";
        $supRslt = db_exec($sql) or errDie("Unable to view suppliers");
        if (pg_numrows($supRslt) < 1) {
            $err = "<li class='err'>No Supplier found in database.</li>";
            return view_err($_POST, $err);
        } else {
            $supid = $pur['supid'];
            $suppliers = "<select name='supid' onChange='javascript:document.form.submit();'>";
            $sel = "";
            $fcid = $pur['fcid'];
            while ($sup = pg_fetch_array($supRslt)) {
                if ($sup['supid'] == $supid) {
                    $sel = "selected";
                    $supaddr = "{$sup['supaddr']}";
                    $accno = $sup['supno'];
                    $fcid = $sup['fcid'];
                    $listid = $sup['listid'];
                } else {
                    $sel = "";
                    $supaddr = "";
                    $accno = "";
                }
                $suppliers .= "<option value='{$sup['supid']}' {$sel}>{$sup['supname']}</option>";
            }
            $suppliers .= "</select>";
        }
    }
    $currs = getSymbol($fcid);
    $curr = $currs['symbol'];
    $currsel = "{$currs['symbol']} - {$currs['descrip']}";
    if (!isset($ordernum)) {
        $ordernum = '';
    }
    /* --- Start Drop Downs --- */
    # days drop downs
    $days = array("0" => "0", "7" => "7", "14" => "14", "30" => "30", "60" => "60", "90" => "90", "120" => "120");
    $termssel = extlib_cpsel("terms", $days, $pur['terms']);
    # format date
    list($npuri_year, $npuri_month, $npuri_day) = explode("-", $pur['pdate']);
    list($del_year, $del_month, $del_day) = explode("-", $pur['ddate']);
    /* --- End Drop Downs --- */
    /* --- Start Products Display --- */
    # Select all products
    $products = "\n\t\t<table " . TMPL_tblDflts . " width='100%'>\n\t\t\t<tr>\n\t\t\t\t<th>ITEM NUMBER</th>\n\t\t\t\t<th>DESCRIPTION</th>\n\t\t\t\t<th>QTY</th>\n\t\t\t\t<th colspan='2'>UNIT PRICE</th>\n\t\t\t\t<th colspan='2'>DUTY</th>\n\t\t\t\t<th>LINE TOTAL</th>\n\t\t\t\t<th>COST PER UNIT</th>\n\t\t\t\t<th>Remove</th>\n\t\t\t<tr>";
    # get selected stock in this Order
    db_connect();
    $sql = "SELECT * FROM nons_purint_items  WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'";
    $stkdRslt = db_exec($sql);
    $i = 0;
    $key = 0;
    while ($stkd = pg_fetch_array($stkdRslt)) {
        # keep track of selected stock amounts
        $amts[$i] = $stkd['amt'];
        $i++;
        /* -- Calculations -- */
        # Calculate cost amount bought
        $totamt = $stkd['qty'] * $stkd['cunitcost'];
        # Calculate percentage from subtotal
        if ($pur['subtot'] != 0) {
            $perc = ($totamt + $stkd['duty']) / $pur['subtot'] * 100;
        } else {
            $perc = 0;
        }
        # Get percentage from shipping charges
        $shipchrg = sprint($perc / 100 * $pur['shipchrg']);
        # Add shipping charges to amt
        $totamt = sprint($totamt + $shipchrg + $stkd['duty']);
        $unitamt = sprint($totamt / $stkd['qty']);
        /* -- End Calculations --*/
        $stkd['amt'] = sprint($stkd['amt']);
        $tip = "&nbsp;&nbsp;&nbsp;";
        if (isset($vatc[$key])) {
            $tip = "<font color='red'>#</font>";
            $error = "<div class='err'> {$tip}&nbsp;&nbsp;=&nbsp;&nbsp; Vat amount is different from amount calculated by cubit. To allow cubit to recalculate the vat amount, please delete the vat amount from the input box.";
        }
        # put in product
        $products .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'><input type='text' size='10' name='cod[]' value='{$stkd['cod']}'></td>\n\t\t\t\t<td align='center'><input type='text' size='20' name='des[]' value='{$stkd['des']}'></td>\n\t\t\t\t<td align='center'><input type='text' size='3' name='qtys[]' value='{$stkd['qty']}'></td>\n\t\t\t\t<td>{$pur['curr']} <input type='text' size='6' name='cunitcost[]' value='{$stkd['cunitcost']}'> or </td>\n\t\t\t\t<td>" . CUR . " <input type='text' size='6' name='unitcost[]' value='{$stkd['unitcost']}'></td>\n\t\t\t\t<td>{$pur['curr']} <input type='text' size='6' name='duty[]' value='{$stkd['duty']}'> or </td>\n\t\t\t\t<td><input type='text' size='3' name='dutyp[]' value='{$stkd['dutyp']}'>%</td>\n\t\t\t\t<td><input type='hidden' name='amt[]' value='{$stkd['amt']}'> {$pur['curr']} {$stkd['amt']}</td>\n\t\t\t\t<td align='right'>{$pur['curr']} {$unitamt}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<input type='checkbox' name='remprod[]' value='{$key}'>\n\t\t\t\t\t<input type='hidden' name='SCROLL' value='yes'>\n\t\t\t\t</td>\n\t\t\t</tr>";
        $key++;
    }
    # Look above(remprod keys)
    $keyy = $key;
    # look above(if i = 0 then there are no products)
    if ($i == 0) {
        $done = "";
        list($year, $mon, $day) = explode("-", date("Y-m-d"));
        # add one
        $products .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'><input type='text' size='10' name='cod[]' value=''></td>\n\t\t\t\t<td align='center'><input type='text' size='20' name='des[]' value=''></td>\n\t\t\t\t<td align='center'><input type='text' size='3' name='qtys[]' value='1'></td>\n\t\t\t\t<td>{$pur['curr']} <input type='text' size='6' name='cunitcost[]'> or </td>\n\t\t\t\t<td>" . CUR . " <input type='text' size='6' name='unitcost[]'></td>\n\t\t\t\t<td>{$pur['curr']} <input type='text' size='6' name='duty[]'> or </td>\n\t\t\t\t<td><input type='text' size='3' name='dutyp[]'>%</td>\n\t\t\t\t<td>{$pur['curr']} 0.00</td>\n\t\t\t\t<td align='right'>{$pur['curr']} 0.00</td>\n\t\t\t\t<td> </td>\n\t\t\t</tr>";
    }
    /* -- start Listeners -- */
    if (isset($diffwhBtn)) {
        list($year, $mon, $day) = explode("-", date("Y-m-d"));
        $products .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td align='center'><input type='text' size='10' name='cod[]' value=''></td>\n\t\t\t\t<td align='center'><input type='text' size='20' name='des[]' value=''></td>\n\t\t\t\t<td align='center'><input type='text' size='3' name='qtys[]' value='1'></td>\n\t\t\t\t<td>{$pur['curr']} <input type='text' size='6' name='cunitcost[]'> or </td>\n\t\t\t\t<td>" . CUR . " <input type='text' size='6' name='unitcost[]'></td>\n\t\t\t\t<td>{$pur['curr']} <input type='text' size='6' name='duty[]'> or </td>\n\t\t\t\t<td><input type='text' size='3' name='dutyp[]'>%</td>\n\t\t\t\t<td>{$pur['curr']} 0.00</td>\n\t\t\t\t<td align='right'>{$pur['curr']} 0.00</td>\n\t\t\t\t<td> </td>\n\t\t\t</tr>";
        $key++;
    }
    /* -- End Listeners -- */
    $products .= "</table>";
    /* --- End Products Display --- */
    /* --- Start Some calculations --- */
    # Get subtotal
    $SUBTOT = sprint($pur['subtot']);
    # Get Total
    $TOTAL = sprint($pur['total']);
    $pur['tax'] = sprint($pur['tax']);
    $pur['shipchrg'] = sprint($pur['shipchrg']);
    $pur['cusid'] += 0;
    if ($pur['cusid'] == 0) {
        $Sl = "SELECT * FROM vatcodes WHERE del='Yes'";
        $Ri = db_exec($Sl) or errDie("Unable to get data.");
        $vd = pg_fetch_array($Ri);
        $pur['cusid'] = $vd['id'];
    }
    db_conn('cubit');
    $Sl = "SELECT * FROM vatcodes ORDER BY code";
    $Ri = db_exec($Sl) or errDie("Unable to get vat codes");
    $Vatcodes = "\n\t\t<select name='delvat'>\n\t\t\t<option value='0'>Select</option>";
    while ($vd = pg_fetch_array($Ri)) {
        if ($vd['id'] == $pur['cusid']) {
            $sel = "selected";
        } else {
            $sel = "";
        }
        $Vatcodes .= "<option value='{$vd['id']}' {$sel}>{$vd['code']}</option>";
    }
    $Vatcodes .= "</select>";
    /* --- End Some calculations --- */
    if (isset($diffwhBtn) or isset($upBtn) or isset($doneBtn) or isset($recv) or isset($donePrnt)) {
        $jump_bot = "\n\t\t\t<script>\n\t\t\t\twindow.location.hash='bottom';\n\t\t\t</script>";
    } else {
        $jump_bot = "";
    }
    $details = "\n\t\t<center>\n\t\t<h3>New International Non-Stock Order</h3>\n\t\t<form action='" . SELF . "' method='POST' name='form'>\n\t\t\t<input type='hidden' name='key' value='update'>\n\t\t\t<input type='hidden' name='purid' value='{$purid}'>\n\t\t<table " . TMPL_tblDflts . " width='95%'>\n\t\t\t<tr>\n\t\t\t\t<td valign='top'>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th colspan='2'> Supplier Details </th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Supplier</td>\n\t\t\t\t\t\t\t<td valign='center'>{$suppliers}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Supplier</td>\n\t\t\t\t\t\t\t<td valign='center'>{$accno}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td valign='top'>Supplier Address</td>\n\t\t\t\t\t\t\t<td valign='center'>" . nl2br($supaddr) . "</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td valign='top' align='right'>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th colspan='2'> Non-Stock Order Details </th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Non-Stock Order No.</td>\n\t\t\t\t\t\t\t<td valign='center'>{$pur['purnum']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Order No.</td>\n\t\t\t\t\t\t\t<td valign='center'><input type='text' size='10' name='ordernum' value='{$ordernum}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Terms</td>\n\t\t\t\t\t\t\t<td valign='center'>{$termssel} Days</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Date</td>\n\t\t\t\t\t\t\t<td valign='center' nowrap='t'>" . mkDateSelect("npuri", $npuri_year, $npuri_month, $npuri_day) . "</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Foreign Currency</td>\n\t\t\t\t\t\t\t<td valign='center'>{$currsel} &nbsp;&nbsp;Exchange rate " . CUR . " <input type='text' size='7' name='xrate' value='{$pur['xrate']}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Tax</td>\n\t\t\t\t\t\t\t<td valign='center'>{$pur['curr']} <input type='text' size='7' name='tax' value='{$pur['tax']}'>{$Vatcodes}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Shipping Charges</td>\n\t\t\t\t\t\t\t<td valign='center'>{$pur['curr']} <input type='text' size='7' name='shipchrg' value='{$pur['fshipchrg']}'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Delivery Date</td>\n\t\t\t\t\t\t\t<td valign='center'>" . mkDateSelect("del", $del_year, $del_month, $del_day) . "</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</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 colspan='2'>{$products}</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<p>\n\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<th width='25%'>Quick Links</th>\n\t\t\t\t\t\t\t<th width='25%'>Remarks</th>\n\t\t\t\t\t\t\t<td rowspan='5' valign='top' width='50%'>{$error}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td class='" . bg_class() . "'><a href='nons-purch-int-view.php'>View International Non-Stock Orders</a></td>\n\t\t\t\t\t\t\t<td class='" . bg_class() . "' rowspan='4' align='center' valign='top'><textarea name='remarks' rows='4' cols='20'>{$pur['remarks']}</textarea></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<script>document.write(getQuicklinkSpecial());</script>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td align=right>\n\t\t\t\t\t<table " . TMPL_tblDflts . " width='80%'>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>SUBTOTAL</td>\n\t\t\t\t\t\t\t<td align='right'>{$pur['curr']} <input type='hidden' name='subtot' value='{$SUBTOT}'>{$SUBTOT}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Shipping Charges</td>\n\t\t\t\t\t\t\t<td align='right'>{$pur['curr']} {$pur['shipchrg']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<td>Tax </td>\n\t\t\t\t\t\t\t<td align='right'>{$pur['curr']} {$pur['tax']}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t\t\t\t<th>GRAND TOTAL</th>\n\t\t\t\t\t\t\t<td align='right'>{$pur['curr']} <input type='hidden' name='total' value='{$TOTAL}'>{$TOTAL}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td colspan='2' align='center'><input type='button' value='&laquo Back' onClick='javascript:history.back()'> | <input name='diffwhBtn' type='submit' value='Add Item'> | <input type='submit' name='upBtn' value='Update'>{$done}</td>\n\t\t\t</tr>\n\t\t</table>\n\t\t<a name='bottom'>\n\t\t</form>\n\t\t</center>\n\t\t{$jump_bot}";
    return $details;
}