Subversion Repositories cheapmusic

Rev

Rev 46 | Rev 50 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
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\">&times;</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\">&times;</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\">&times;</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
}