added priority

This commit is contained in:
2023-01-18 21:09:06 +01:00
parent 05f11a18cd
commit 4e30e3a439
4 changed files with 92 additions and 11 deletions

View File

@@ -10,6 +10,7 @@ $ItemPrice = $_POST['ItemPrice'];
$ItemLink = $_POST['ItemLink'];
$ItemImage = $_POST['ItemImage'];
$ListID = $_POST['ItemListID'];
$nextPriority = 0;
#--- check if the provided Link is a valid URL
@@ -42,13 +43,20 @@ if ($conn->connect_error) {
die('Connection failed: ' . $conn->connect_error);
}
$stmt = $conn->prepare('INSERT INTO whishes (title, description, link, image, price, whislist) VALUES (?, ?, ?, ?, ?, ?)');
$stmt = 'SELECT MAX( priority ) AS maxprio FROM whishes WHERE whislist = ' . $ListID . ';';
$result = $conn->query($stmt);
if (false === $stmt) {
die('prepare() failed: ' . htmlspecialchars($mysqli->error));
while ($row = mysqli_fetch_array($result)) {
$nextPriority = $row['maxprio'] + 1;
}
$rc = $stmt->bind_param('ssssii', $ItemTitle, $ItemDescription, $ItemLink, $imageLocalLink, $ItemPriceCents, $ListID);
$stmt = $conn->prepare('INSERT INTO whishes (title, description, link, image, price, whislist, priority) VALUES (?, ?, ?, ?, ?, ?, ?)');
if (false === $stmt) {
die('prepare() failed: ' . htmlspecialchars($conn->error));
}
$rc = $stmt->bind_param('ssssiii', $ItemTitle, $ItemDescription, $ItemLink, $imageLocalLink, $ItemPriceCents, $ListID, $nextPriority);
if (false === $rc) {
die('bind_param() failed: ' . htmlspecialchars($stmt->error));
}

4
include/get_pw_hash.php Normal file
View File

@@ -0,0 +1,4 @@
<?php
if(isset($_GET['pass'])) {
echo(password_hash($_GET['pass'], PASSWORD_DEFAULT));
}

View File

@@ -34,7 +34,8 @@ function generateListItem($ListItemID, $ItemImage, $ItemTitle, $ItemLink, $ItemP
if($loggedin == true)
{
echo('
<button type="button" class="btn btn-sm btn-outline-danger" data-wishid="' . $ListItemID . '" data-bs-toggle="modal" data-bs-target="#deleteModal">Löschen</button>'
<button type="button" class="btn btn-sm btn-outline-danger" data-wishid="' . $ListItemID . '" data-bs-toggle="modal" data-bs-target="#deleteModal">Löschen</button>
<button type="button" class="btn btn-sm btn-outline-secondary" data-wishid="' . $ListItemID . '" data-bs-toggle="modal" data-bs-target="#pushprioModal">Prio +</button>'
);
}
@@ -139,6 +140,9 @@ function wishlistMainBuilder($ListID, $sortby)
case 'random':
$sort = 'RAND()';
break;
case 'priority':
$sort = 'priority DESC';
break;
}
$sql = 'SELECT ID, title, description, link, image, reserved, price, date FROM whishes WHERE whislist = ' . $ListID . ' ORDER BY ' . $sort;

View File

@@ -8,7 +8,7 @@ include_once('config/config.php');
$ListID = -1;
$loggedin = false;
$sortby = 'date_asc';
$sortby = 'priority';
if (isset($_GET['list'])) {
$ListID = $_GET['list'];
@@ -16,6 +16,8 @@ if (isset($_GET['list'])) {
if (isset($_POST['sortby'])) {
$sortby = $_POST['sortby'];
} else if (isset($_POST['sortby_transfer'])) {
$sortby = $_POST['sortby_transfer'];
}
if (isset($_SESSION['listid'])) {
@@ -62,8 +64,8 @@ if (isset($_POST['listadd'])) {
die('Connection failed: ' . $conn->connect_error);
}
$sql = 'INSERT INTO lists (title, description, edit_pw) VALUES ("' . $listName . '", "' .$listDescription. '","' . $listPassword . '")';
$sql = 'INSERT INTO lists (title, description, edit_pw) VALUES ("' . $listName . '", "' . $listDescription . '","' . $listPassword . '")';
$result = $conn->query($sql);
if ($conn->query($sql) === TRUE) {
@@ -73,11 +75,10 @@ if (isset($_POST['listadd'])) {
$loggedin = true;
$actual_link = 'http://' . $_SERVER['HTTP_HOST'] . '/?list=' . $last_id;
header('Location: ' . $actual_link);
} else {
$message = array('msg' => 'Error: ' . $sql . '<br>' . $conn->error, 'type' => 'error');
}
$conn->close();
}
@@ -128,6 +129,31 @@ if (isset($_POST['reservation'])) {
$conn->close();
}
if (isset($_POST['pushprio'])) {
$nextPriority = 0;
$conn = new mysqli($servername, $username, $password, $db);
// Check connection
if ($conn->connect_error) {
die('Connection failed: ' . $conn->connect_error);
}
$stmt = 'SELECT MAX( priority ) AS maxprio FROM whishes WHERE whislist = ' . $ListID . ';';
$result = $conn->query($stmt);
while ($row = mysqli_fetch_array($result)) {
$nextPriority = $row['maxprio'] + 1;
}
$sql = 'UPDATE whishes SET priority=' . $nextPriority . ' WHERE ID = ' . $_POST['WhishID'];
if ($conn->query($sql) === TRUE)
$message = array('msg' => 'Wunschpriorität aktualisiert', 'type' => 'success');
else
$message = array('msg' => 'Uups, irgendwas ist schief gegangen!', 'type' => 'danger');
}
if (isset($_POST['delete']) && $loggedin == true) {
if (isset($_POST['WhishID'])) {
@@ -221,6 +247,7 @@ if (isset($_POST['delete']) && $loggedin == true) {
?>
<form class="form-inline" action="" method="POST">
<select class="form-control" name="sortby" id="sortby">
<option <?php echo ($sortby == 'priority' ? 'selected="selected"' : ''); ?> value="priority">Priorit&auml;t</option>
<option <?php echo ($sortby == 'price_asc' ? 'selected="selected"' : ''); ?> value="price_asc">Preis aufsteigend</option>
<option <?php echo ($sortby == 'price_desc' ? 'selected="selected"' : ''); ?> value="price_desc">Preis absteigend</option>
<option <?php echo ($sortby == 'date_desc' ? 'selected="selected"' : ''); ?> value="date_desc">Datum, neu -> alt</option>
@@ -300,6 +327,7 @@ if (isset($_POST['delete']) && $loggedin == true) {
</div>
<div class="modal-footer">
<input type="hidden" id="ItemListID" name="ItemListID" value="' . $ListID . '">
<input type="hidden" id="sortby_transfer" name="sortby_transfer" value="' . $sortby . '">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Add new Item</button>
</div>
@@ -331,6 +359,7 @@ if (isset($_POST['delete']) && $loggedin == true) {
</div>
<div class="modal-footer">
<input type="hidden" id="sortby_transfer" name="sortby_transfer" value="' . $sortby . '">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="submit" name="login" class="btn btn-primary">Login</button>
</div>
@@ -358,6 +387,7 @@ if (isset($_POST['delete']) && $loggedin == true) {
<div class="modal-footer">
<form action="" method="POST">
<input type="hidden" id="WhishID" name="WhishID" value="-1">
<input type="hidden" id="sortby_transfer" name="sortby_transfer" value="' . $sortby . '">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="submit" name="delete" class="btn btn-primary">Löschen</button>
</form>
@@ -366,6 +396,31 @@ if (isset($_POST['delete']) && $loggedin == true) {
</div>
</div>
<!-- END OF Modal Delete-->
<!-- Modal PushPrio-->
<div class="modal fade" id="pushprioModal" tabindex="-1" aria-labelledby="pushprioModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="pushprioModalLabel">Wunschpriorität</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<h5 id="whish-title">WunschTitel</h5>
<p>Soll die Priorität dieses Wunsch ganz nach oben gesetzt werden?</p>
</div>
<div class="modal-footer">
<form action="" method="POST">
<input type="hidden" id="WhishID" name="WhishID" value="-1">
<input type="hidden" id="sortby_transfer" name="sortby_transfer" value="' . $sortby . '">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Nein</button>
<button type="submit" name="pushprio" class="btn btn-primary">Ja</button>
</form>
</div>
</div>
</div>
</div>
<!-- END OF Modal PushPrio-->
');
}
?>
@@ -386,6 +441,7 @@ if (isset($_POST['delete']) && $loggedin == true) {
<input type="password" class="form-control" id="WishPassword" name="WishPassword" rows="3" required>
<input type="hidden" name="wishid" id="modal-wishid" value="">
<input type="hidden" name="reservedstat" id="modal-reservedstat" value="">
<input type="hidden" id="sortby_transfer" name="sortby_transfer" value="' . $sortby . '">
</div>
</div>
<div class="modal-footer">
@@ -428,6 +484,16 @@ if (isset($_POST['delete']) && $loggedin == true) {
modal.find(\'#WhishID\').val(wishid)
modal.find(\'#whish-title\').text(whishtitle)
});
$(\'#pushprioModal\').on(\'show.bs.modal\', function(event) {
var resTr = $(event.relatedTarget)
var whishcard = resTr.parents().closest(\'.card\');
var whishtitle = whishcard.find(\'.card-title\').text();
var wishid = resTr.data(\'wishid\')
var modal = $(this)
modal.find(\'#WhishID\').val(wishid)
modal.find(\'#whish-title\').text(whishtitle)
});
');
}
?>
@@ -437,7 +503,6 @@ if (isset($_POST['delete']) && $loggedin == true) {
this.form.submit();
});
});
</script>
</body>