Subversion Repositories cheapmusic

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
<?php
7 - 2
include_once('php/sessions_db.php');
3
include_once('php/cryptor.php');
4
 
2 - 5
if ($_SERVER["SERVER_NAME"] == "www.findcheapmusic.com") {
5 - 6
	header("Strict-Transport-Security: max-age=31536000; includeSubDomains; preload");
7
	header("X-Content-Type-Options: nosniff");
8
	header("X-XSS-Protection: 1; mode=block");
9
	header("Access-Control-Allow-Origin: *");
10
	header("Referrer-Policy: no-referrer");
11
	header("X-Frame-Options: SAMEORIGIN");
12
	header("Set-Cookie: ^(.*)$ $1;HttpOnly;Secure");
13
	header("Content-Security-Policy: default-src 'none'; font-src https://use.fontawesome.com; form-action 'self'; img-src 'self' data: https://thumbs1.ebaystatic.com https://thumbs2.ebaystatic.com https://thumbs3.ebaystatic.com https://thumbs4.ebaystatic.com; script-src 'self' 'unsafe-inline' https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js; style-src 'self' 'unsafe-inline' https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/ https://use.fontawesome.com/releases/v5.8.1/css/;frame-ancestors 'self'");
2 - 14
}
15
 
7 - 16
$configFile = parse_ini_file("../MyFiles/config/cheapmusic.ini",true);
17
$crypt = Cryptor::getInstance($configFile['cryptor']);
18
$tmpSessionTab = (isset($_POST["sessionTab"]) && $_POST["sessionTab"] > 0 ? $_POST["sessionTab"] : null);
19
echo "Tmp Session Tab = " . $tmpSessionTab . "<br>";
20
$handler = MySessionHandler::getInstance($tmpSessionTab, $configFile['mysqli']);
21
unset($configFile);
22
 
2 - 23
ini_set("session.cookie_httponly", 1);
24
ini_set("session.cookie_secure", 1);
7 - 25
session_set_save_handler($handler, true);
2 - 26
session_start();
27
?>
28
<!DOCTYPE html>
29
<html lang="en-US">
30
<head>
31
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
32
    <title>Find Cheap Music...</title>
33
    <meta name="viewport" content="width=device-width, initial-scale=1">
34
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
35
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js" integrity="sha384-JUMjoW8OzDJw4oFpWIB2Bu/c6768ObEthBMVSiIx4ruBIEdyNSUQAjJNFqT5pnJ6" crossorigin="anonymous"></script>
36
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
37
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
6 - 38
    <link rel="stylesheet" href="css/style.min.css" integrity="sha384-zfDdfwK/GMKsN/HIVw5QfYNpAuPYAhtEwYs/IFiDiboUBjXRjHpjPt1gdNtJgAWA" crossorigin="anonymous">
3 - 39
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf" crossorigin="anonymous">
2 - 40
    <!-- Global site tag (gtag.js) - Google Analytics -->
41
    <!--script async src="https://www.googletagmanager.com/gtag/js?id=UA-138428761-2"></script-->
42
    <!--script src="/js/gtag.js" integrity="sha384-ZoAmOe9K3AXr6ONEK6njtE/HMsMvyjck9EfsgXdZLG7rEiz5GqXEk3RQc2cFIRNY" crossorigin="anonymous"></script-->
43
</head>
44
<body>
45
 
46
<?php
47
include_once('php/clsLibGTIN.php');
48
include_once('php/tools.php');
49
 
5 - 50
initSessionVariables();
2 - 51
 
52
if ($_SERVER["REQUEST_METHOD"] == "POST") {
5 - 53
	if ($_POST["submit"] == "Search") {
54
		$zip = sanitizeInput($_POST['buyerZip']);
55
		if (strlen($zip) == 5 && preg_match("/^[0-9 ]*$/", $zip)) {
56
			$_SESSION["buyer"]["Zip"] = $zip;
57
		} else if (strlen($zip) == 0) {
58
			$_SESSION["buyer"]["Zip"] = "";
59
		}
2 - 60
 
5 - 61
		if (empty($_POST["searchTerm"])) {
62
			$_SESSION["searchTerm"] = "";
63
			$_SESSION["resultArr"] = [];
64
		} else {
65
			$_SESSION["searchTerm"] = sanitizeInput($_POST["searchTerm"]);
2 - 66
 
5 - 67
            if (checkSearchFilters()) {
68
    			performSearch();
69
    		}
70
		}
71
	} else if ($_POST["submit"] == "Save") {
72
		$_SESSION["filterCondition"]["New"] = checkPV("filterConditionNew");
73
		$_SESSION["filterCondition"]["Used"] = checkPV("filterConditionUsed");
74
		$_SESSION["filterMediaType"]["CD"] = checkPV("filterMediaTypeCD");
75
		$_SESSION["filterMediaType"]["Record"] = checkPV("filterMediaTypeRecord");
76
		$_SESSION["filterMediaType"]["Digital"] = checkPV("filterMediaTypeDigital");
2 - 77
 
5 - 78
        if (checkSearchFilters()) {
79
			performSearch();
80
		}
81
	} else if (in_array($_POST["submit"], $buttonArr)) {
82
		$_SESSION["currentView"] = $_POST["submit"];
83
		filterResults();
84
	}
85
} else if ($_SERVER["REQUEST_METHOD"] == "GET") {
86
	$_SESSION["buyer"]["Zip"] = "";
87
	if (isset($_GET['z'])) {
88
		$zip = sanitizeInput($_GET['z']);
89
		if (strlen($zip) == 5 && preg_match("/^[0-9 ]*$/", $zip)) {
90
			$_SESSION["buyer"]["Zip"] = $zip;
91
		}
92
	}
2 - 93
 
5 - 94
	if (isset($_GET['q'])) {
95
		$_SESSION["searchTerm"] = sanitizeInput($_GET["q"]);
96
        if (checkSearchFilters()) {
97
    		performSearch();
98
    	}
99
	} else {
100
	    $_SESSION["searchTerm"] = "";
101
	}
2 - 102
}
103
?>
104
 
105
    <nav class="navbar navbar-expand-sm bg-dark navbar-dark">
106
        <a class="navbar-brand" href="#">Home</a>
107
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#collapsibleNavbar">
108
            <span class="navbar-toggler-icon"></span>
109
        </button>
110
        <div class="collapse navbar-collapse" id="collapsibleNavbar">
111
            <ul class="navbar-nav">
112
                <li class="nav-item">
113
                    <a class="nav-link" href="terms.html">Terms of Service</a>
114
                </li>
115
                <li class="nav-item">
116
                    <a class="nav-link" href="privacy.html">Privacy Policy</a>
117
                </li>
118
            </ul>
119
        </div>
120
    </nav>
121
 
3 - 122
    <div class="page-header bg-primary">
123
        <div class="container text-center py-3">
2 - 124
            <h1>Find Cheap Music...</h1>
4 - 125
            <p class="d-none d-sm-block">Find the cheapest music online. Advertisement free website.</p>
2 - 126
        </div>
127
    </div>
128
 
3 - 129
	<div class="container-fluid bg-primary py-3">
5 - 130
        <?php
131
            echo $_SESSION["filterWarnings"];
132
        ?>
2 - 133
        <form method="post" action="/index.php"
134
            onsubmit="document.getElementById('search').innerHTML = '&lt;span class=\'spinner-border spinner-border-sm\'&gt;&lt;/span&gt; Searching, please wait...';">
7 - 135
            <input type="hidden" name="sessionTab" value="<?php echo $handler->getSessionTab(); ?>">
2 - 136
        	<div class="input-group mb-3">
137
            	<div class="input-group-prepend">
4 - 138
                    <div class="d-none d-sm-block">
139
                        <button class="btn input-group-text mx-1 rounded" type="button" data-toggle="modal" data-target="#searchInfoModal"><i class="fas fa-info-circle" style="font-size:25px"></i></button>
140
                	</div>
141
                	<button class="btn input-group-text mx-1 rounded" type="button" data-toggle="modal" data-target="#filterModal" data-keyboard="false"><i class="fas fa-filter" style='font-size:25px'></i></button>
2 - 142
            	</div>
5 - 143
            	<input id="searchTerm" name="searchTerm" type="text" class="form-control ml-1" placeholder="Search by Barcode, Label, Artist, Title, ..." value="<?php echo getSV("searchTerm") ?>">
2 - 144
            	<div class="input-group-append">
145
                    <button id="search" type="submit" class="btn btn-success" name="submit" value="Search">Go</button>
146
                </div>
147
        	</div>
4 - 148
        	<div class="input-group input-group-sm mb-3 col-xl-5 col-lg-7 col-md-12 col-sm-12 col-12">
2 - 149
            	<div class="input-group-prepend input-group-sm">
4 - 150
          			<!--span class="input-group-text mx-1">Shipping to:</span-->
151
          			<label class="mr-2">Shipping to:</label>
2 - 152
            	</div>
4 - 153
                <div class="d-none d-sm-inline-flex">
154
              		<input type="text" class="form-control form-control-sm mx-1" maxlength="20" style="width:12em!important" id="buyerCountry" name="buyerCountry" value="United States" readonly>
155
                    <input type="text" class="form-control form-control-sm mx-1" maxlength="3" style="width:3.5em!important" id="buyerCurrency" name="buyerCurrency" value="USD" readonly>
156
                </div>
5 - 157
            	<input type="text" class="form-control form-control-sm mx-1" maxlength="5" style="width:2.5em!important" id="buyerZip" name="buyerZip" placeholder="Zip Code" value="<?php echo $_SESSION["buyer"]["Zip"];?>">
2 - 158
	            <?php
5 - 159
                    if ($_SESSION["buyer"]["Zip"] == '') {
4 - 160
                    	echo '<div class="input-group-append input-group-sm mx-1 rounded">';
5 - 161
                    	echo '  <i class="fas fa-exclamation-triangle input-group-text img-fluid rounded" style="font-size:14px;color:orange;" title="Please enter your postal code to get the accurate shipping cost for items listed using a shipping rate table." data-toggle="tooltip" data-placement="auto" data-delay="100"></i>';
162
                    	echo '</div>';
163
                    }
2 - 164
                ?>
165
        	</div>
166
        </form>
167
    </div>
168
 
5 - 169
    <?php
7 - 170
echo "Session Tab = " . $handler->getSessionTab() . "<br>";
5 - 171
        echo printTableHeader();
172
        echo buildTable();
173
        echo printSearchFilterModal();
174
        echo printSearchInfoModal();
175
    ?>
2 - 176
 
177
    <footer class="container-fluid text-center">
178
        <p>Disclaimer: As an Associate we earn from qualifying purchases.</p>
179
        <p>Copyright &#169; 2019 FindCheapMusic.com. All rights reserved.</p>
180
    </footer>
181
 
6 - 182
    <script src="/js/dr.min.js" integrity="sha384-EtIwzuKAwnONywwaqKOYs3eD2KXe6HrxJ1Ako6N6cR5LHyrLhKsaxBuSbkJhhtEH" crossorigin="anonymous"></script>
2 - 183
</body>
184
</html>