| 45 |
- |
1 |
<?php
|
|
|
2 |
include_once('php/clsLibGTIN.php');
|
|
|
3 |
include_once('php/constants.php');
|
|
|
4 |
|
|
|
5 |
error_reporting(E_ALL);
|
|
|
6 |
|
|
|
7 |
// add new entry to wishlist
|
|
|
8 |
function addWishlist($wlArr) {
|
|
|
9 |
$conn = MySessionHandler::getDBSessionId();
|
|
|
10 |
|
|
|
11 |
$created = mysqli_real_escape_string($conn, time());
|
|
|
12 |
$modified = $created;
|
|
|
13 |
|
|
|
14 |
$uid = $_SESSION['sessData']['userID'];
|
| 46 |
- |
15 |
$mid = isset($wlArr->{'mid'}) ? mysqli_real_escape_string($conn, $wlArr->{'mid'}) : 'NULL';
|
|
|
16 |
$rid = isset($wlArr->{'rid'}) ? mysqli_real_escape_string($conn, $wlArr->{'rid'}) : 'NULL';
|
| 45 |
- |
17 |
$title = mysqli_real_escape_string($conn, $wlArr->{'title'});
|
|
|
18 |
$artist = mysqli_real_escape_string($conn, $wlArr->{'artist'});
|
|
|
19 |
$format = 'Any';
|
| 46 |
- |
20 |
$currency = 'USD'; //bugbug
|
| 45 |
- |
21 |
$price = 'NULL';
|
| 47 |
- |
22 |
$url = mysqli_real_escape_string($conn, $wlArr->{'url'});
|
| 45 |
- |
23 |
$thumbnail = mysqli_real_escape_string($conn, $wlArr->{'thumbnail'});
|
|
|
24 |
|
|
|
25 |
$sql = "INSERT
|
|
|
26 |
INTO wishlist
|
| 47 |
- |
27 |
(id, created, modified, uid, mid, rid, title, artist, format, currency, price, url, thumbnail)
|
|
|
28 |
VALUES (NULL, '$created', '$modified', '$uid', '$mid', '$rid', '$title', '$artist', '$format', '$currency', '$price', '$url', '$thumbnail')";
|
| 45 |
- |
29 |
|
|
|
30 |
if ($result = mysqli_query($conn, $sql)) {
|
| 46 |
- |
31 |
$_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>";
|
| 45 |
- |
32 |
} else {
|
|
|
33 |
$error = mysqli_errno($conn);
|
|
|
34 |
if ($error == 1062) {
|
| 46 |
- |
35 |
$_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>";
|
| 45 |
- |
36 |
} else {
|
| 46 |
- |
37 |
$_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>";
|
| 45 |
- |
38 |
error_log("MySQL Read Wishlist SQL: " . $sql);
|
|
|
39 |
error_log("MySQL Write Wishlist Error: " . mysqli_error($conn) . " (" . $error . ")");
|
|
|
40 |
}
|
|
|
41 |
}
|
|
|
42 |
|
|
|
43 |
return;
|
|
|
44 |
}
|
|
|
45 |
|
| 46 |
- |
46 |
function checkWishlist($type, $id) {
|
| 45 |
- |
47 |
$conn = MySessionHandler::getDBSessionId();
|
|
|
48 |
|
|
|
49 |
$uid = $_SESSION['sessData']['userID'];
|
|
|
50 |
|
|
|
51 |
$sql = "SELECT id
|
|
|
52 |
FROM wishlist
|
| 46 |
- |
53 |
WHERE uid = '$uid' and " . ($type == "master" ? "mid" : "rid") . " = '$id'";
|
| 45 |
- |
54 |
|
|
|
55 |
if ($result = mysqli_query($conn, $sql)) {
|
|
|
56 |
if (mysqli_num_rows($result) > 0) {
|
|
|
57 |
return true;
|
|
|
58 |
}
|
|
|
59 |
} else if (mysqli_errno($conn)) {
|
|
|
60 |
error_log("MySQL Read Wishlist SQL: " . $sql);
|
|
|
61 |
error_log("MySQL Read Wishlist Error: " . mysqli_error($conn) . " (" . mysqli_errno($conn) . ")");
|
|
|
62 |
return true;
|
|
|
63 |
}
|
|
|
64 |
|
|
|
65 |
return false;
|
| 46 |
- |
66 |
}
|
|
|
67 |
|
|
|
68 |
function getWishlist() {
|
|
|
69 |
$str = '';
|
|
|
70 |
$conn = MySessionHandler::getDBSessionId();
|
|
|
71 |
|
|
|
72 |
$uid = $_SESSION['sessData']['userID'];
|
|
|
73 |
|
|
|
74 |
$sql = "SELECT *
|
|
|
75 |
FROM wishlist
|
|
|
76 |
WHERE uid = '$uid'";
|
|
|
77 |
|
|
|
78 |
if ($result = mysqli_query($conn, $sql)) {
|
|
|
79 |
if (mysqli_num_rows($result) > 0) {
|
|
|
80 |
$str .= "<table id=\"wishlistTable\" class=\"table table-striped table-condensed small\">";
|
|
|
81 |
$str .= "<thead class=\"thead-dark sticky-top\">";
|
|
|
82 |
$str .= "<tr><th>Image</th>";
|
| 47 |
- |
83 |
$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>";
|
|
|
84 |
$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>";
|
|
|
85 |
$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>";
|
| 46 |
- |
86 |
$str .= "<th class=\"d-none\">Ceiling Price Number</th>";
|
| 47 |
- |
87 |
$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>";
|
| 46 |
- |
88 |
$str .= "<th></th><th></th><th></th><th></th></tr></thead>";
|
|
|
89 |
$str .= "<tbody>";
|
| 47 |
- |
90 |
|
|
|
91 |
$cnt = 0;
|
| 46 |
- |
92 |
|
|
|
93 |
while($row = mysqli_fetch_assoc($result)) {
|
| 47 |
- |
94 |
++$cnt;
|
| 46 |
- |
95 |
$artist = (empty($row["artist"]) ? "Various" : $row["artist"]);
|
|
|
96 |
$altText = "Image for " . $row['title'] . " by " . $artist;
|
|
|
97 |
$price = print_monetary($row['price'], $row['currency']);
|
| 47 |
- |
98 |
$searchTitle = 'Searching for:<br>' . $row['title'] . " by " . $artist;
|
|
|
99 |
|
|
|
100 |
$str .= "<form method=\"post\" action=\"/index.php\">";
|
|
|
101 |
$str .= " <input type=\"hidden\" name=\"sessionTab\" value=\"" . MySessionHandler::getSessionTab() . "\">";
|
|
|
102 |
$str .= " <input type=\"hidden\" name=\"discogsTitle\" value=\"" . $row['title'] . "\">";
|
|
|
103 |
$str .= " <input type=\"hidden\" name=\"discogsArtist\" value=\"" . $row['artist'] . "\">";
|
| 46 |
- |
104 |
|
|
|
105 |
$str .= "<tr>";
|
| 47 |
- |
106 |
$str .= "<td><img class=\"img-fluid wishlist-img\" src=\"" . $row["thumbnail"] . "\" alt=\"$altText\"></td>";
|
| 46 |
- |
107 |
$str .= "<td>$artist</td>";
|
|
|
108 |
$str .= "<td>" . $row['title'] . "</td>";
|
|
|
109 |
$str .= "<td>" . $row['format'] . "</td>";
|
|
|
110 |
$str .= "<td class=\"d-none\">" . $row['price'] . "</td>";
|
|
|
111 |
$str .= "<td>" . $price . "</td>";
|
| 47 |
- |
112 |
$str .= "<td><button class=\"btn rounded\" type=\"button\" data-toggle=\"tooltip\" title=\"Edit\"><i class=\"fas fa-edit btn-wishlist\"></i></button></td>";
|
|
|
113 |
$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>";
|
|
|
114 |
$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>";
|
|
|
115 |
$str .= "<input type=\"hidden\" name=\"discogsSearchTerm\" value=\"" . $row['artist'] . " " . $row['title'] . "\">";
|
|
|
116 |
$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>";
|
| 46 |
- |
117 |
|
|
|
118 |
$str .= "</tr>";
|
| 47 |
- |
119 |
$str .= "</form>";
|
| 46 |
- |
120 |
}
|
|
|
121 |
|
|
|
122 |
$str .= "</tbody>";
|
|
|
123 |
$str .= "</table>";
|
|
|
124 |
}
|
|
|
125 |
} else if (mysqli_errno($conn)) {
|
|
|
126 |
error_log("MySQL Read Wishlist SQL: " . $sql);
|
|
|
127 |
error_log("MySQL Read Wishlist Error: " . mysqli_error($conn) . " (" . mysqli_errno($conn) . ")");
|
|
|
128 |
}
|
|
|
129 |
|
|
|
130 |
return $str;
|
| 45 |
- |
131 |
}
|