Example #1
0
function show_items($template_name)
{
    global $TPL;
    global $db;
    global $db2;
    $current_user =& singleton("current_user");
    $today = date("Y") . "-" . date("m") . "-" . date("d");
    $dbUsername = new db_alloc();
    $db = new db_alloc();
    $db2 = new db_alloc();
    $db->query("select * from item order by itemName");
    while ($db->next_record()) {
        $i++;
        $item = new item();
        $item->read_db_record($db);
        $db2->query("select * from loan where itemID=" . $item->get_id() . " and dateReturned='0000-00-00'");
        $db2->next_record();
        $loan = new loan();
        $loan->read_db_record($db2);
        $item->set_values();
        // you need to have this repeated here for the a href bit below.
        if ($loan->get_value("dateReturned") == "0000-00-00") {
            if ($loan->have_perm(PERM_READ_WRITE)) {
                // if item is overdue
                if ($loan->get_value("dateToBeReturned") < $today) {
                    $ret = "Return Now!";
                } else {
                    $ret = "Return";
                }
                $TPL["itemAction"] = "<td><a href=\"" . $TPL["url_alloc_item"] . "itemID=" . $TPL["itemID"] . "&return=true\">{$ret}</a></td>";
            } else {
                // if you don't have permission to borrow or return item.
                $TPL["itemAction"] = "<td>&nbsp;</td>";
            }
            $TPL["status"] = "Due " . $loan->get_value("dateToBeReturned");
            $dbUsername->query("select username from person where personID=" . $loan->get_value("personID"));
            $dbUsername->next_record();
            $TPL["person"] = "from " . $dbUsername->f("username");
        } else {
            // if the item is available
            $TPL["status"] = "Available";
            $TPL["person"] = "";
            $TPL["itemAction"] = "<td><a href=\"" . $TPL["url_alloc_item"] . "itemID=" . $TPL["itemID"] . "&borrow=true\">Borrow</a></td>";
            $TPL["dueBack"] = "";
        }
        $loan->set_values();
        $item->set_values();
        include_template($template_name);
    }
}
Example #2
0
function show_overdue($template_name)
{
    global $db;
    global $TPL;
    $current_user =& singleton("current_user");
    $db = new db_alloc();
    $temp = mktime(0, 0, 0, date("m"), date("d"), date("Y"));
    $today = date("Y", $temp) . "-" . date("m", $temp) . "-" . date("d", $temp);
    $q = prepare("SELECT itemName,itemType,item.itemID,dateBorrowed,dateToBeReturned,loan.personID \n                  FROM loan,item \n                 WHERE dateToBeReturned < '%s' \n\t\t\t\t\t         AND dateReturned = '0000-00-00' \n\t\t\t\t\t         AND item.itemID = loan.itemID\n               ", $today);
    if (!have_entity_perm("loan", PERM_READ, $current_user, false)) {
        $q .= prepare("AND loan.personID = %d", $current_user->get_id());
    }
    $db->query($q);
    while ($db->next_record()) {
        $i++;
        $item = new item();
        $loan = new loan();
        $item->read_db_record($db);
        $loan->read_db_record($db);
        $item->set_values();
        $loan->set_values();
        $person = new person();
        $person->set_id($loan->get_value("personID"));
        $person->select();
        $TPL["person"] = $person->get_name();
        $TPL["overdue"] = "<a href=\"" . $TPL["url_alloc_item"] . "itemID=" . $item->get_id() . "&return=true\">Overdue!</a>";
        include_template($template_name);
    }
}
Example #3
0
        $loan->save();
        alloc_redirect($TPL["url_alloc_loanAndReturn"]);
    }
}
if ($_POST["returnItem"]) {
    $dbTemp = new db_alloc();
    $dbTemp->query("select * from loan where itemID=%d and dateReturned='0000-00-00'", $itemID);
    $db = new db_alloc();
    $db->query("select * from loan where loan.itemID=%d and dateBorrowed>dateReturned", $itemID);
    $db->next_record();
    $loan->set_id($db->f("loanID"));
    if ($loan->select()) {
        $loan->set_value("dateReturned", $today);
        $loan->set_value("itemID", $itemID);
        // check to see if admin/manager returning someone elses item, and sent email
        if ($loan->get_value("personID") != $current_user->get_id()) {
            if ($current_user->have_role("admin") || $current_user->have_role("manage")) {
                $person = new person();
                $person->set_id($loan->get_value("personID"));
                $person->select();
                $loan->save();
            }
        } else {
            $loan->save();
        }
    }
    alloc_redirect($TPL["url_alloc_loanAndReturn"]);
}
if ($_GET["return"]) {
    include_template("templates/itemReturnM.tpl");
} else {
Example #4
0
 $row["idx"] = $hit->id;
 $author = $item->get_value("itemAuthor");
 $author and $author = " by " . $author;
 $row["title"] = $item->get_id() . " " . $item->get_link() . $author;
 $row["score"] = sprintf('%d%%', $hit->score * 100);
 $row["desc"] = page::htmlentities($d->getFieldValue('desc'));
 // get availability of loan
 $db2 = new db_alloc();
 $query = prepare("SELECT * FROM loan WHERE itemID = %d AND dateReturned='0000-00-00'", $item->get_id());
 $db2->query($query);
 if ($db2->next_record()) {
     $loan = new loan();
     $loan->read_db_record($db2);
     if ($loan->have_perm(PERM_READ_WRITE)) {
         // if item is overdue
         if ($loan->get_value("dateToBeReturned") < $today) {
             $status = "Overdue";
         } else {
             $status = "Due on " . $loan->get_value("dateToBeReturned");
         }
         $row["related"] = $status . " <a href=\"" . $TPL["url_alloc_item"] . "itemID=" . $item->get_id() . "&return=true\">Return</a>";
         // Else you dont have permission to loan or return so just show status
     } else {
         $name = page::htmlentities($p[$loan->get_value("personID")]["name"]);
         if ($loan->get_value("dateToBeReturned") < $today) {
             $row["related"] = "Overdue from " . $name;
         } else {
             $row["related"] = "Due from " . $name . " on " . $loan->get_value("dateToBeReturned");
         }
     }
 } else {