Пример #1
0
function tietable($result)
{
    global $SEMESTER;
    echo "<table class='table'><tr><th>#</th><th>Status</th><th>Comments</th><th>Actions</th></tr>";
    while ($row = mysql_fetch_array($result)) {
        if ($row['borrower'] == '') {
            if ($row['status'] == "Circulating") {
                $status = "Not checked out";
            } else {
                $status = $row['status'];
            }
            $rowstyle = '';
        } else {
            if ($row['status'] == "Circulating") {
                $stat = "Checked out to";
            } else {
                if ($row['status'] == "Lost") {
                    $stat = "Lost by";
                } else {
                    $stat = "<span style='color: red'>{$row['status']}</span>; held by";
                }
            }
            $status = "{$stat} <a href='#profile:{$row['borrower']}'>{$row['borrowerName']}</a> since {$row['dateOut']}";
            $active = mysql_num_rows(mysql_query("select * from `activeSemester` where `member` = '{$row['borrower']}' and `semester` = '{$SEMESTER}'"));
            if ($active) {
                $status .= "<br><span style='color: green'>Active</span> this semester";
            } else {
                $status .= "<br><span style='color: red'>Inactive</span> this semester";
            }
            $deposit = mysql_fetch_array(mysql_query("select sum(`amount`) as `total` from `transaction` where `type` = 'deposit' and `memberID` = '{$row['borrower']}'"));
            if ($deposit['total'] >= fee("tie")) {
                $depok = true;
            } else {
                $depok = false;
            }
            if ($depok) {
                $status .= "<br>Tie deposit <span style='color: green'>paid</span>";
            } else {
                $status .= "<br>Tie deposit <span style='color: red'>unpaid</span>";
            }
            if ($active && $depok) {
                $rowstyle = "class='success'";
            } else {
                $rowstyle = "class='error'";
            }
            if ($row['status'] != "Circulating") {
                $rowstyle = "";
            }
        }
        echo "<tr {$rowstyle}><td>{$row['tie']}</td><td>{$status}</td><td>{$row['comments']}</td><td><button type='button' class='btn btn-link tie_hist'>History</button> <button type='button' class='btn btn-link tie_edit'>Edit</button></td></tr>";
    }
    echo "</table>";
}
Пример #2
0
function tie_form($memberID)
{
    global $SEMESTER;
    $tie = 0;
    $query = mysql_query("select `tie` from `tieBorrow` where `member` = '{$memberID}' and `dateIn` is null");
    $result = mysql_fetch_array($query);
    if (mysql_num_rows($query) != 0) {
        $tie = $result['tie'];
    }
    $head = fullNameFromEmail($memberID) . ' ';
    $form = '';
    if ($tie == 0) {
        $head .= "does not have a tie checked out.";
        $form = "Check out tie number <input type='text' class='tienum' style='width: 40px; margin-bottom: 1px'><span class='spacer'></span><button type='button' class='btn tie_checkout' data-member='{$memberID}'>Submit</button>";
    } elseif ($tie > 0) {
        $head .= "has tie <span style='font-weight: bold'>{$tie}</span> checked out.";
        $form = "<button type='button' class='btn tie_return' data-member='{$memberID}'>Return</button>";
    } elseif ($tie < 0) {
        $head .= "is a tie thief.";
        $form = "<button type='button' class='btn tie_return' data-member='{$memberID}'>Resolve</button>";
    }
    $sql = "select sum(`amount`) as `balance` from `transaction` where `memberID` = '{$memberID}' and `type` = 'deposit'";
    $result = mysql_fetch_array(mysql_query($sql));
    $balance = $result['balance'];
    if ($balance == '') {
        $balance = 0;
    }
    $deposit = "<span style='color: red'>unpaid</span>";
    if ($balance >= fee("tie")) {
        $deposit = "<span style='color: green'>paid</span>";
    }
    return "{$head}<br>Tie deposit:  {$deposit}<br><br>{$form}";
}
Пример #3
0
    die("Choir is not set");
}
if ($type == "dues") {
    $query = mysql_query("select `member`.`email` from `member`, `activeSemester` where `member`.`email` = `activeSemester`.`member` and `activeSemester`.`semester` = '{$SEMESTER}'");
    $dues = -1 * fee("dues");
    while ($row = mysql_fetch_array($query)) {
        $member = $row['email'];
        $query2 = mysql_query("select * from `transaction` where `memberID` = '{$member}' and `semester` = '{$SEMESTER}' and `type` = 'dues' and `amount` < 0");
        if (mysql_num_rows($query2)) {
            continue;
        }
        mysql_query("insert into `transaction` (`memberID`, `choir`, `amount`, `description`, `semester`, `type`) values ('{$member}', '{$CHOIR}', '{$dues}', '', '{$SEMESTER}', 'dues')");
    }
} else {
    if ($type == "late") {
        $fee = -1 * fee("latedues");
        $query = mysql_query("select `member`.`email` from `member`, `activeSemester` where `member`.`email` = `activeSemester`.`member` and `activeSemester`.`semester` = '{$SEMESTER}'");
        while ($row = mysql_fetch_array($query)) {
            $member = $row['email'];
            $result = mysql_fetch_array(mysql_query("select sum(`amount`) as amount from `transaction` where `memberID` = '{$member}' and `semester` = '{$SEMESTER}' and `type` = 'dues'"));
            if ($result['amount'] >= 0) {
                continue;
            }
            if (!mysql_query("insert into `transaction` (`memberID`, `choir` `amount`, `description`, `semester`, `type`) values ('{$member}', '{$CHOIR}', '{$fee}', 'Late fee', '{$SEMESTER}', 'dues')")) {
                die("BAD_QUERY");
            }
        }
    } else {
        echo "BAD_TYPE";
        exit(1);
    }
Пример #4
0
function rosterProp($member, $prop)
{
    global $SEMESTER, $CHOIR;
    if (!$CHOIR) {
        die("No choir selected");
    }
    $html = '';
    switch ($prop) {
        case "Section":
            $section = mysql_fetch_array(mysql_query("select `sectionType`.`name` from `sectionType`, `activeSemester` where `sectionType`.`id` = `activeSemester`.`section` and `activeSemester`.`choir` = '{$CHOIR}' and `activeSemester`.`semester` = '{$SEMESTER}' and `activeSemester`.`member` = '" . $member["email"] . "'"));
            $html .= $section['name'];
            break;
        case "Contact":
            $html .= "<a href='tel:" . $member["phone"] . "'>" . $member["phone"] . "</a><br><a href='mailto:" . $member['email'] . "'>" . $member["email"] . "</a>";
            break;
        case "Location":
            $html .= $member["location"];
            break;
        case "Car":
            if ($member["passengers"] == 0) {
                $html .= "No";
            } else {
                $html .= $member["passengers"] . " passengers";
            }
            break;
        case "Enrollment":
            $enr = enrollment($member["email"]);
            if ($enr == "class") {
                $html .= "<span style=\"color: blue\">class</span>";
            } else {
                if ($enr == "club") {
                    $html .= "club";
                } else {
                    $html .= "<span style=\"color: gray\">inactive</span>";
                }
            }
            break;
        case "Balance":
            $balance = balance($member['email']);
            if ($balance < 0) {
                $html .= "<span class='moneycell' style='color: red'>{$balance}</span>";
            } else {
                $html .= "<span class='moneycell'>{$balance}</span>";
            }
            break;
        case "Dues":
            $result = mysql_fetch_array(mysql_query("select sum(`amount`) as `balance` from `transaction` where `memberID` = '" . $member['email'] . "' and `type` = 'dues' and `semester` = '{$SEMESTER}'"));
            $balance = $result['balance'];
            if ($balance == '') {
                $balance = 0;
            }
            if ($balance >= 0) {
                $html .= "<span class='duescell' style='color: green'>{$balance}</span>";
            } else {
                $html .= "<span class='duescell' style='color: red'>{$balance}</span>";
            }
            break;
        case "Gigs":
            $gigcount = attendance($member["email"], 3);
            $result = mysql_fetch_array(mysql_query("select `gigreq` from `semester` where `semester` = '{$SEMESTER}'"));
            $gigreq = $result['gigreq'];
            if ($gigcount >= $gigreq) {
                $html .= "<span class='gigscell' style='color: green'>";
            } else {
                $html .= "<span class='gigscell' style='color: red'>";
            }
            $html .= "{$gigcount}</span>";
            break;
        case "Score":
            if (enrollment($member["email"]) == 'inactive') {
                $grade = "--";
            } else {
                $grade = attendance($member["email"], 0);
            }
            $html .= "<span class='gradecell'";
            if (enrollment($member["email"]) == "class" && $grade < 80) {
                $html .= " style=\"color: red\"";
            }
            $html .= ">{$grade}</span>";
            break;
        case "Tie":
            $html .= "<span class='tiecell' ";
            $result = mysql_fetch_array(mysql_query("select sum(`amount`) as `amount` from `transaction` where `memberID` = '" . $member['email'] . "' and `type` = 'deposit'"));
            $tieamount = $result['amount'];
            if ($tieamount == '') {
                $tieamount = 0;
            }
            if ($tieamount >= fee("tie")) {
                $html .= "style='color: green'";
            } else {
                $html .= "style='color: red'";
            }
            $html .= ">";
            $query = mysql_query("select `tie` from `tieBorrow` where `member` = '" . $member['email'] . "' and `dateIn` is null");
            if (mysql_num_rows($query) != 0) {
                $result = mysql_fetch_array($query);
                $html .= $result['tie'];
            } else {
                $html .= "•";
            }
            $html .= "</span>";
            break;
        default:
            $html .= "???";
            break;
    }
    return $html;
}
Пример #5
0
function info($userEmail)
{
    global $SEMESTER, $CHOIR;
    $html = "";
    $sql = "select sum(`amount`) as `balance` from `transaction` where `memberID` = '{$userEmail}' and `type` = 'dues' and `semester` = '{$SEMESTER}'";
    $result = mysql_fetch_array(mysql_query($sql));
    $dues = $result['balance'];
    if ($dues == '') {
        $dues = 0;
    }
    $sql = "select sum(`amount`) as `balance` from `transaction` where `memberID` = '{$userEmail}' and `type` = 'deposit'";
    $result = mysql_fetch_array(mysql_query($sql));
    $tie = $result['balance'];
    if ($tie == '') {
        $tie = 0;
    }
    $html .= "<table><tr><td>";
    if ($dues >= 0) {
        $html .= "<span class='color: green'><i class='icon-ok'></i></span>";
    } else {
        $html .= "<span class='color: red'><i class='icon-remove'></i></span>";
    }
    $html .= "</td><td>Dues</td></tr><tr><td>";
    if ($tie >= fee("tie")) {
        $html .= "<span class='color: green'><i class='icon-ok'></i></span>";
    } else {
        $html .= "<span class='color: red'><i class='icon-remove'></i></span>";
    }
    $html .= "</td><td>Tie Deposit</td></tr></table><br>";
    $sql = "select `tie` from `tieBorrow` where `member` = '{$userEmail}' and `dateIn` is null";
    $query = mysql_query($sql);
    if (mysql_num_rows($query) == 0) {
        $html .= "You do <b>not</b> have a tie checked out.";
    } else {
        $result = mysql_fetch_array($query);
        $html .= "You have tie <b>" . $result['tie'] . "</b> checked out.";
    }
    $html .= "<br>";
    $balance = balance($userEmail);
    $choir = choirname($CHOIR);
    if ($balance > 0) {
        $html .= "{$choir} owes you <span style='font-weight: bold; color: blue'>\${$balance}</span>.";
    } else {
        if ($balance < 0) {
            $balance *= -1;
            $html .= "You owe {$choir} <span style='font-weight: bold; color: red'>\${$balance}</span>.";
        } else {
            $html .= "Your {$choir} balance is <span style='font-weight: bold'>\$0</span>.";
        }
    }
    $html .= "<br><br>" . user_money_table($userEmail);
    return "{$html}";
}
Пример #6
0
}
if (!isset($_POST['action']) || $_POST['action'] == "none") {
    ?>
<style>
button { margin-left: 10px; }
</style>
<table id='transac' class='table'></table>
<div id='roster_ops' class='pull-right'><button type='button' class='btn' onclick='addMoneyForm()'>Add Transaction</button></div>
<?php 
    exit(0);
}
switch ($_POST['action']) {
    case 'values':
        $member = mysql_real_escape_string($_POST['member']);
        $result = mysql_fetch_array(mysql_query("select sum(`amount`) as `total` from `transaction` where `memberID` = '{$member}' and `type` = 'deposit'"));
        $total = $result['total'];
        $deposit = fee("tie");
        $dues = fee("dues");
        if ($total >= $deposit) {
            $dep = -1 * $deposit;
        } else {
            $dep = $deposit;
        }
        echo "{$dep}";
        break;
    case 'row':
        echo "<tr class='trans_row'><td>" . memberDropdown() . "</td><td>" . transacTypes() . "</td><td>" . semesterDropdown() . "</td><td><input type='text' class='amount' data-amount-dues='{$dues}' data-amount-deposit='{$deposit}' placeholder='Amount' style='width: 60px'></input></td><td><input type='text' class='description' placeholder='Description' maxlength='500'></input></td><td><input type='checkbox' class='receipt'> Send receipt</td><td><button type='button' class='btn cancel'><i class='icon-remove'></i></button></td></tr>";
        break;
    default:
        die("Unknown action {$_POST['action']}");
}
 public function putTable($name, $set, $xid_field, $xfer)
 {
     global $logService;
     $rset = array();
     foreach ($set as $rec) {
         $vals = array();
         foreach ($rec as $field => $val) {
             if ($field == 'uuid') {
                 continue;
             }
             if ($xid_field && $field == $xid_field) {
                 $field = 'xid';
                 $xid = $val;
             }
             $vals[$field] = $val;
         }
         if ($xid_field) {
             $rec['xid'] = $xid;
         }
         $sql = "INSERT INTO " . $name . " (";
         $i = 0;
         foreach ($vals as $field => $val) {
             if ($i > 0) {
                 $sql .= ',';
             }
             $sql .= '`' . $field . '`';
             $i++;
         }
         $sql = $sql . ") VALUES (";
         $i = 0;
         foreach ($vals as $field => $val) {
             if ($i > 0) {
                 $sql .= ',';
             }
             $sql .= "'" . $val . "'";
             $i++;
         }
         $sql .= ");";
         $sth = $this->prepare($sql);
         $i = 1;
         /* foreach($vals as $field=>$val){
                $sth->bindParam($i,$vals[$field],PDO::PARAM_STR);
                $i++;
            } */
         try {
             $this->beginTransaction();
             //$logService->log('DEBUG','calling main insert  into'.$name,$sth->queryString,'migrate');
             $sth->execute();
             //$logService->log('DEBUG','after main insert  into'.$name,$sth->queryString,'migrate');
             if (!$xid_field) {
                 $xid = $this->lastInsertId();
                 $rec['xid'] = $xid;
                 //$logService->log('DEBUG','after main set xid'.$name,$sth->queryString,'migrate');
             }
             $rset[] = $rec;
             $table = $name;
             $action = 1;
             // $logService->log('DEBUG','handling insert into xfer '.$xfer,$table,'migrate');
             $sth61 = $this->prepare("INSERT into " . $xfer . " (xid,`table`,`action`,`date`) VALUES(?,?,?,now())");
             $sth61->bindParam(1, $xid, PDO::PARAM_INT);
             $sth61->bindParam(2, $table, PDO::PARAM_STR);
             $sth61->bindParam(3, $action, PDO::PARAM_INT);
             $sth61->execute();
             $this->commit();
             // $logService->log('DEBUG','after commit',$table,'migrate');
         } catch (Exception $x) {
             // $logService->log('ERROR','exception',fee($x),'migrate');
             if ($x->getCode() == 23000) {
                 //$logService->log('HANDLED ERROR','duplicate record while migrating',$name,'migrate');
             }
             try {
                 //$logService->log('ERROR','exception and roll back',fee($x),'migrate');
                 $this->rollBack();
             } catch (Exception $xx) {
                 $logService->log('HANDLED ERROR', 'Exception on rollback', fee($xx), 'migrate');
             }
         }
     }
     return $rset;
 }