Esempio n. 1
0
function generateReceiptInfo($connection, $receiptID)
{
    $info = getReceiptInfo($connection, $receiptID);
    $sales = array();
    $items = trim($info['itemArray'], '#');
    $items = explode('#', $items);
    $prices = trim($info['priceArray'], '#');
    $prices = explode('#', $prices);
    foreach ($items as $key => $item) {
        if (strlen($item) == 0) {
            echo "WARNING : Found an empty entry in receipt #{$receiptID}, ignoring...\n";
            continue;
        }
        $identifier = evalUID($item);
        if (isGS($item)) {
            $temp = getGSMerchInfo($connection, $identifier['artist'], $identifier['piece']);
            $sales[] = forceStringLength($item . LF . substr($temp['PieceTitle'], 0, 16), 26) . " \$" . number_format($prices[$key], 2);
        } else {
            $temp = getMerchInfo($connection, $identifier['artist'], $identifier['piece']);
            $sales[] = forceStringLength($item . LF . substr($temp['MerchTitle'], 0, 16), 26) . " \$" . number_format($prices[$key], 2);
        }
    }
    return $sales;
}
Esempio n. 2
0
//		--- HIGH PRIORITY ---
//TODO : Test this (seems unreliable)
//TODO : Work around when it crashes
// 		--- LOW PRIORITY ---
//TODO : Fix the chmod 777 fix (likely with polkit)
//TODO : Make a cron?
//	sendToPrinter($template);
while (true) {
    $receipts = findUnprintedReceipts($connection);
    if (count($receipts) === 0) {
        //echo "Nothing to print, sleeping...\n";
        sleep(2);
    } else {
        foreach ($receipts as $receipt) {
            $itemsSold = generateReceiptInfo($connection, $receipt);
            $receiptInfo = getReceiptInfo($connection, $receipt);
            $user = getUserInfo($connection, $receiptInfo['userID']);
            $user = $user['name'];
            $purchases = implode(LF . " " . str_repeat('*-', 15) . LF, $itemsSold);
            $transid = $receipt;
            $ttlitems = count($itemsSold);
            $total = $receiptInfo['price'];
            $paid = $receiptInfo['paid'];
            $change = floatval($receiptInfo['paid']) - floatval($receiptInfo['price']);
            $final_receipt = $template;
            $final_receipt = str_replace('%USER%', $user, $final_receipt);
            $final_receipt = str_replace('%PURCHASES%', $purchases, $final_receipt);
            $final_receipt = str_replace('%TRANSID%', $transid, $final_receipt);
            $final_receipt = str_replace('%TTLITEMS%', $ttlitems, $final_receipt);
            $final_receipt = str_replace('%TOTAL%', number_format($total, 2), $final_receipt);
            $final_receipt = str_replace('%PAID%', number_format($paid, 2), $final_receipt);