Rev 46 | Rev 52 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php
include_once('php/clsLibGTIN.php');
include_once('php/constants.php');
error_reporting(E_ALL);
// add new entry to wishlist
function addWishlist($wlArr) {
$conn = MySessionHandler::getDBSessionId();
$created = mysqli_real_escape_string($conn, time());
$modified = $created;
$uid = $_SESSION['sessData']['userID'];
$mid = isset($wlArr->{'mid'}) ? mysqli_real_escape_string($conn, $wlArr->{'mid'}) : 'NULL';
$rid = isset($wlArr->{'rid'}) ? mysqli_real_escape_string($conn, $wlArr->{'rid'}) : 'NULL';
$title = mysqli_real_escape_string($conn, $wlArr->{'title'});
$artist = mysqli_real_escape_string($conn, $wlArr->{'artist'});
$format = 'Any';
$currency = 'USD'; //bugbug
$price = 'NULL';
$url = mysqli_real_escape_string($conn, $wlArr->{'url'});
$thumbnail = mysqli_real_escape_string($conn, $wlArr->{'thumbnail'});
$sql = "INSERT
INTO wishlist
(id, created, modified, uid, mid, rid, title, artist, format, currency, price, url, thumbnail)
VALUES (NULL, '$created', '$modified', '$uid', '$mid', '$rid', '$title', '$artist', '$format', '$currency', '$price', '$url', '$thumbnail')";
if ($result = mysqli_query($conn, $sql)) {
$_SESSION['wishlistAdd'] = "<div class=\"alert alert-success alert-dismissible my-0\"><button type=\"button\" class=\"close\" data-dismiss=\"alert\">×</button>" . $wlArr->{'title'} . " by " . $wlArr->{'artist'} . " has been added to the wishlist.</div>";
} else {
$error = mysqli_errno($conn);
if ($error == 1062) {
$_SESSION['wishlistAdd'] = "<div class=\"alert alert-warning alert-dismissible my-0\"><button type=\"button\" class=\"close\" data-dismiss=\"alert\">×</button>" . $wlArr->{'title'} . " by " . $wlArr->{'artist'} . " is already on the wishlist.</div>";
} else {
$_SESSION['wishlistAdd'] = "<div class=\"alert alert-danger alert-dismissible my-0\"><button type=\"button\" class=\"close\" data-dismiss=\"alert\">×</button>Error. Could not add " . $wlArr->{'title'} . " by " . $wlArr->{'artist'} . " to the wishlist.</div>";
error_log("MySQL Read Wishlist SQL: " . $sql);
error_log("MySQL Write Wishlist Error: " . mysqli_error($conn) . " (" . $error . ")");
}
}
return;
}
function checkWishlist($type, $id) {
$conn = MySessionHandler::getDBSessionId();
$uid = $_SESSION['sessData']['userID'];
$sql = "SELECT id
FROM wishlist
WHERE uid = '$uid' and " . ($type == "master" ? "mid" : "rid") . " = '$id'";
if ($result = mysqli_query($conn, $sql)) {
if (mysqli_num_rows($result) > 0) {
return true;
}
} else if (mysqli_errno($conn)) {
error_log("MySQL Read Wishlist SQL: " . $sql);
error_log("MySQL Read Wishlist Error: " . mysqli_error($conn) . " (" . mysqli_errno($conn) . ")");
return true;
}
return false;
}
function getWishlist() {
$str = '';
$conn = MySessionHandler::getDBSessionId();
$uid = $_SESSION['sessData']['userID'];
$sql = "SELECT *
FROM wishlist
WHERE uid = '$uid'";
if ($result = mysqli_query($conn, $sql)) {
if (mysqli_num_rows($result) > 0) {
$str .= "<table id=\"wishlistTable\" class=\"table table-striped table-condensed small\">";
$str .= "<thead class=\"thead-dark sticky-top\">";
$str .= "<tr><th>Image</th>";
$str .= "<th class=\"text-left cursor-pointer\" onclick=\"sortTable('wishlistTable', 1, 'text')\">Artist<span class=\"float-right\"><i class=\"fas fa-caret-up\"</i><i class=\"fas fa-caret-down\"></span></th>";
$str .= "<th class=\"text-left cursor-pointer\" onclick=\"sortTable('wishlistTable', 2, 'text')\">Title<span class=\"float-right\"><i class=\"fas fa-caret-up\"</i><i class=\"fas fa-caret-down\"></span></th>";
$str .= "<th class=\"cursor-pointer\" onclick=\"sortTable('wishlistTable', 3, 'text')\">Format<span class=\"float-right\"><i class=\"fas fa-caret-up\"</i><i class=\"fas fa-caret-down\"></span></th>";
$str .= "<th class=\"d-none\">Ceiling Price Number</th>";
$str .= "<th class=\"cursor-pointer\" onclick=\"sortTable('wishlistTable', 4, 'currency')\">Ceiling Price<span class=\"float-right\"><i class=\"fas fa-caret-up\"</i><i class=\"fas fa-caret-down\"></span></th>";
$str .= "<th></th><th></th><th></th><th></th></tr></thead>";
$str .= "<tbody>";
$cnt = 0;
while($row = mysqli_fetch_assoc($result)) {
++$cnt;
$artist = (empty($row["artist"]) ? "Various" : $row["artist"]);
$altText = "Image for " . $row['title'] . " by " . $artist;
$price = print_monetary($row['price'], $row['currency']);
$searchTitle = 'Searching for:<br>' . $row['title'] . " by " . $artist;
$str .= "<form method=\"post\" action=\"/index.php\">";
$str .= " <input type=\"hidden\" name=\"sessionTab\" value=\"" . MySessionHandler::getSessionTab() . "\">";
$str .= " <input type=\"hidden\" name=\"discogsTitle\" value=\"" . $row['title'] . "\">";
$str .= " <input type=\"hidden\" name=\"discogsArtist\" value=\"" . $row['artist'] . "\">";
$str .= "<tr>";
$str .= "<td><img class=\"img-fluid wishlist-img\" src=\"" . $row["thumbnail"] . "\" alt=\"$altText\"></td>";
$str .= "<td>$artist</td>";
$str .= "<td>" . $row['title'] . "</td>";
$str .= "<td>" . $row['format'] . "</td>";
$str .= "<td class=\"d-none\">" . $row['price'] . "</td>";
$str .= "<td>" . $price . "</td>";
$str .= "<td><button class=\"btn rounded\" type=\"button\" data-toggle=\"tooltip\" title=\"Edit\"><i class=\"fas fa-edit btn-wishlist\"></i></button></td>";
$str .= "<td><button class=\"btn rounded\" type=\"button\" data-toggle=\"tooltip\" title=\"Delete\"><i class=\"fas fa-window-close btn-wishlist btn-wishlist-delete\"></i></button></td>";
$str .= "<td><button class=\"btn rounded\" type=\"button\" data-toggle=\"tooltip\" title=\"Information\"><a href=\"" . $row['url'] . "\" target=\"_blank\"><i class=\"fas fa-info-circle btn-wishlist\"</a></button></td>";
$str .= "<input type=\"hidden\" name=\"discogsSearchTerm\" value=\"" . $row['artist'] . " " . $row['title'] . "\">";
$str .= "<td><button type=\"submit\" name=\"submit\" value=\"discogsSearch\" class=\"btn rounded\" onclick=\"progressBar('" . $searchTitle . "');\"><i class=\"fas fa-search btn-wishlist\" title=\"Search for Sales Offers\" data-toggle=\"tooltip\" data-placement=\"left\"></i></button></td>";
$str .= "</tr>";
$str .= "</form>";
}
$str .= "</tbody>";
$str .= "</table>";
}
} else if (mysqli_errno($conn)) {
error_log("MySQL Read Wishlist SQL: " . $sql);
error_log("MySQL Read Wishlist Error: " . mysqli_error($conn) . " (" . mysqli_errno($conn) . ")");
}
return $str;
}