0) $purch_id = mysql_insert_id(); else $purch_id = 0; return $purch_id; } function email_alert($subject, $msg, $email) { global $ADMIN_EMAIL; if ($email == "") { $email = "webmaster@opb.org"; } $newmsg = "Automatic email alert from online shop:\n\n" . $msg; mail($ADMIN_EMAIL,$subject,$newmsg,"From: $email"); } function adjust_item_cart($db, $purch_id, $item_id, $num) { $sql = "select item_count from baskets where purch_id=" . $purch_id; $sql .= " and item_id=" . $item_id; $result = mysql_query($sql); if (mysql_affected_rows() > 0) { $row = mysql_fetch_array($result, MYSQL_ASSOC); $sql = "update baskets set item_count=" . $num . " where purch_id=" . $purch_id . " and item_id=" . $item_id; mysql_query($sql); } else { add_item_cart($db, $purch_id, $item_id, $num); return; } /* clean the dead wood */ $sql = "delete from baskets where purch_id=" . $purch_id . " and item_count<1"; mysql_query($sql); if ($result) mysql_free_result($result); } function add_item_cart($db, $purch_id, $item_id, $num=1) { if ($purch_id == 0) return; $sql = "select item_count from baskets where purch_id=" . $purch_id; $sql .= " and item_id=" . $item_id; $result = mysql_query($sql); if (mysql_affected_rows() > 0) { $row = mysql_fetch_array($result, MYSQL_ASSOC); $cnt = $row["item_count"] + $num; $sql = "update baskets set item_count=" . $cnt; $sql .= " where purch_id=" . $purch_id; $sql .= " and item_id=" . $item_id; mysql_query($sql); } else { $sql = "insert into baskets (purch_id, item_id, item_count, entered, "; $sql .= "status) values ("; $sql .= $purch_id . "," . $item_id . "," . $num . ",now(),'active')"; mysql_query($sql); } if ($result) mysql_free_result($result); } function total_cost_and_shipping($db, $pid, &$cost, &$ship) { $cost = 0.0; $ship = 0.0; $book_shipment = false; $sql = "select * from baskets, items where purch_id=" . $pid . " and baskets.item_id=items.item_id"; $result = mysql_query($sql); if (mysql_num_rows($result) < 1) return 0; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $cost += floatval($row["item_price"]) * intval($row["item_count"]); $ship += floatval($row["item_ship"]) * intval($row["item_count"]); /* if it's a book shipment, we will add $4 s/h fee */ if ($row["item_type"] == 3) $book_shipment = true; } if ($book_shipment == true) $ship += 4.00; $price = $cost + $ship; return $price; } function item_count($db, $purch_id, $item_id) { if (($purch_id == 0) || ($item_id == 0)) return 0; $sql = "select sum(item_count) from baskets where purch_id=" . $purch_id; $sql .= " and item_id=" . $item_id; $result = mysql_query($sql); $row = mysql_fetch_array($result, MYSQL_NUM); if ($result) mysql_free_result($result); return $row[0]; } function cart_count($db, $purch_id) { if ($purch_id == 0) return 0; $sql = "select sum(item_count) from baskets where purch_id=" . $purch_id; $result = mysql_query($sql); $row = mysql_fetch_array($result, MYSQL_NUM); if ($result) mysql_free_result($result); return $row[0]; } function cart_window($db, $purch_id) { error_log('hey!'); if ($purch_id == 0) { $num_items = 0; } else { $num_items = cart_count($db, $purch_id); } if (!isset($num_items)) $num_items = 0; echo "
\n"; echo " \n \n"; echo " \n "; echo " \n \n"; echo "
"; echo "Your Shopping Cart
"; echo "

You have " . $num_items . " items in your cart.
\n"; if ($num_items > 0) { $total = total_cost_and_shipping($db, $purch_id, $cost, $ship); } else { $total = 0; $cost = 0; $ship = 0; } if ($cost > 0) { echo "$" . number_format($cost,2,'.','') . " (plus $" . number_format($ship,2,'.','') . " s/h)

\n"; } echo "

"; echo "View Cart"; echo " | "; echo ""; echo "Check Out

\n"; echo "
\n\n"; } function get_item_info($db, $item_id) { $sql = "select * from items, item_types " . " where items.item_id=" . $item_id . " and items.item_type=item_types.item_type"; $result = mysql_query($sql, $db); if (($result == FALSE) || (mysql_num_rows($result) < 1)) { return NULL; } $row = mysql_fetch_array($result, MYSQL_ASSOC); if ($result) mysql_free_result($result); return $row; } function display_item_edit($db, $item_id) { global $root_dir; $item = get_item_info($db, $item_id); if ($item == NULL) { echo "

 

\n"; return; } echo "\n"; echo " \n \n
"; $fname = $root_dir . "/images/preview/".$item_id.".jpg"; if (is_file($fname)) { $srcname = "/store/images/preview/".$item_id.".jpg"; $border = 1; } else { $srcname = "/store/images/preview/noimage.gif"; $border = 0; } echo ""; echo ""; echo "

" . $item["item_label"] . "
\n"; /* if it's one or more certificates */ if ($item["item_type"] == 4) { echo "Face Value: $" . $item["item_price"]; } else { echo "Price: $" . $item["item_price"]; } if ($item["item_special"] != "") { echo "  (" . $item["item_special"] . ")"; } echo "
\n"; /* show availability if it's not a certificate */ if ($item["item_type"] != 4) { echo "Availability: " . $item["avail_text"] . "
\n"; } echo "Shipping: " . $item["ship_text"] . "

\n\n"; echo "

count

\n"; echo "
 
\n"; if ($result) mysql_free_result($result); } function display_item($db, $item_id, $page_id) { global $SHOPPER, $root_dir; $item = get_item_info($db, $item_id); if ($item == NULL) { echo "

 

\n"; return; } echo "\n"; echo " \n \n
"; echo ""; $fname = $root_dir . "/images/preview/".$item_id.".jpg"; if (is_file($fname)) { $srcname = "/store/images/preview/".$item_id.".jpg"; } else { $srcname = "/store/images/preview/noimage.jpg"; } echo ""; echo ""; echo "

"; echo $item["item_label"] . "
\n"; echo "Price: $" . $item["item_price"]; if ($item["item_special"] != "") { echo "  (" . $item["item_special"] . ")"; } echo "
\nAvailability: " . $item["avail_text"] . "
\n"; echo "Shipping: " . $item["ship_text"] . "

\n\n"; echo "

"; echo "Add to Shopping Cart

\n"; echo "
 
\n"; if ($result) mysql_free_result($result); } function select_state ($db, $tag, $selected) { $sql = "select * from states order by state_label"; $result = mysql_query($sql, $db); if ($selected == "") $selected = "OR"; echo "\n"; if ($result) mysql_free_result($result); } function shop_payment_methods($db, $tag, $selected) { $sql = "select * from payment_methods where pmt_type='credit card' order by pmt_id"; $result = mysql_query($sql, $db); echo "\n"; if ($result) mysql_free_result($result); } function payment_method($db, $pmtmethod) { $label = ""; $sql = "select * from payment_methods where pmt_id='" . $pmtmethod . "'"; $result = mysql_query($sql); if ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $label = $row["pmt_label"]; } if ($result) mysql_free_result($result); return $label; } function item_type($db, $type) { $label = ""; $sql = "select * from item_types where item_type='" . $type . "'"; $result = mysql_query($sql); if ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $label = $row["type_label"]; mysql_free_result($result); } return $label; } function confirm_credit_card($ccnum, $expyear, $expmonth) { $ccNumber = ereg_replace("([^0-9])","",$ccnum); $today = getdate(); if (($expyear <= $today["year"]) && ($expmonth < $today["mon"])) { return 0; } $valid = 1; $numOfDigits = 0 - strlen($ccNumber); $i = -1; while ($i >= $numOfDigits){ if (($i % 2) == 0){ $double = 2*(substr($ccNumber, $i, 1)); $total += substr($double, 0, 1); if (strlen($double > 1)){ $total += substr($double, 1, 1); } } else { $total += substr($ccNumber, $i, 1); } $i--; } if (($total % 10) != 0){ $valid = 0; } return $valid; } function update_basket($purch_id) { $sql = "select * from baskets,items where baskets.purch_id=" . $purch_id . " and baskets.item_id=items.item_id " . "and baskets.status='active' " . "and baskets.item_count>0 order by baskets.item_id"; $result = mysql_query($sql); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $var = "count_" . $row["item_id"]; if (isset($_REQUEST[$var])) $cnt = intval($_REQUEST[$var]); else $cnt = 0; adjust_item_cart($db, $purch_id, $row["item_id"], $cnt); } mysql_free_result($result); } ?>