develop #50

Merged
vex merged 21 commits from develop into main 2025-05-01 14:29:43 +00:00
10 changed files with 75 additions and 74 deletions
Showing only changes of commit 373d655bae - Show all commits

View File

@ -29,7 +29,7 @@
document.addEventListener('DOMContentLoaded', function () {
ladeWarenkorb();
document.getElementById('zurKasseGehen').addEventListener('click', function() {
document.getElementById('zurKasseGehen').addEventListener('click', function () {
window.location.href = '/bestellformular'; // Deine Bestellformular-Seite
});
});
@ -116,6 +116,6 @@
localStorage.setItem('warenkorb', JSON.stringify(warenkorb));
ladeWarenkorb();
}
</script>
</script>
</body>
</html>

View File

@ -24,7 +24,7 @@
<label for="nachname">Nachname:</label>
<input type="text" id="Nachname" name="Nachname" required placeholder="Nachname">
<label for="kundenNr">Kunden Nr.:</label>
<label for="kundenNr">Kunden-Nr.:</label>
<input type="text" id="KundenNr" name="KundenNr" required placeholder="Kunden Nr.">
<label for="strasse">Straße:</label>
@ -36,7 +36,7 @@
<label for="ort">Ort:</label>
<input type="text" id="ort" name="ort" required placeholder="Ort">
<label>Artikel Nr. / Stückzahl:</label>
<label>Artikel-Nr. / Stückzahl:</label>
<a class="button-submit" id="sendOrder">Bestellung absenden</a>
@ -56,7 +56,6 @@
document.addEventListener('DOMContentLoaded', function () {
const formular = document.getElementById('bestellform');
const kundenNrInput = document.getElementById('KundenNr');
const VornameInput = document.getElementById('Vorname');
const NachnameInput = document.getElementById('Nachname');
@ -142,7 +141,7 @@
const result = await response.json();
if (response.ok) {
// Bestellung erfolgreich -> Weiterleitung
// Bestellung erfolgreich Weiterleitung
warenkorbLeeren();
window.location.href = "/bestellung";
} else {

View File

@ -33,23 +33,23 @@
window.location.href = '/login';
return;
}
try {
const response = await fetch('/api/bestellung/daten', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ user_id: user_id })
body: JSON.stringify({user_id: user_id})
});
if (response.ok) {
const daten = await response.json();
const bestellungContainer = document.getElementById('bestellung');
bestellungContainer.innerHTML = '';
const bestellungen = {};
daten.forEach(item => {
if (!bestellungen[item.order_id]) {
bestellungen[item.order_id] = {
@ -68,24 +68,24 @@
const bestellung = bestellungen[orderId];
const bestellCard = document.createElement('div');
bestellCard.className = 'bestell-info-card';
let produkteHTML = '';
bestellung.produkte.forEach(produkt => {
produkteHTML += `
<p>• ${produkt.name} — ${produkt.quantity} Stück — Preis: ${produkt.preis.toFixed(2)} €</p>
`;
});
bestellCard.innerHTML = `
<h3>Bestellnummer: ${orderId}</h3>
${produkteHTML}
</br>
<p><strong>Gesamtsumme:</strong> ${bestellung.total.toFixed(2)} €</p>
`;
bestellungContainer.appendChild(bestellCard);
}
} else if (response.status === 404) {
document.getElementById('bestellung').innerHTML = '<p>Keine Bestellungen gefunden.</p>';
} else {
@ -95,10 +95,10 @@
console.error('Fehler: ', error);
}
}
window.addEventListener('DOMContentLoaded', ladeBestellung);
</script>
</script>
<!-- Footer wird dynamisch geladen -->
<div id="footer"></div>
</body>

View File

@ -1,6 +1,6 @@
<!--
Header-Bereich Einbindung
Zeigt Logo, Link zur Startseite, Warenkorb (beispielhaft, keine Funktion) und Menüleiste an
zeigt Logo, Link zur Startseite, Warenkorb (beispielhaft, keine Funktion) und Menüleiste an
-->
<header>
<!-- Logo und Shop-Titel -->
@ -24,7 +24,6 @@
<span class="cart-count" id="cart-count">0</span>
</a>
</div>
</div>
</header>
<!-- Navigationsmenü -->
@ -38,17 +37,17 @@
<li class="menu-item">
<a href="/shop"><i class='bx bx-store'></i> Shop</a>
<ul class="submenu">
<li><a href="/shop/motorrad"></i> Motorräder</a></li>
<li><a href="/shop/oldtimer"></i> Oldtimer</a></li>
<li><a href="/shop/sportwagen"></i> Sportwagen</a></li>
<li><a href="/shop/lkw"></i> LKWs</a></li>
<li><a href="/shop/motorrad"> Motorräder</a></li>
<li><a href="/shop/oldtimer"> Oldtimer</a></li>
<li><a href="/shop/sportwagen"> Sportwagen</a></li>
<li><a href="/shop/lkw"> LKWs</a></li>
</ul>
</li>
<!-- Link zu Über uns-->
<!-- Link zu über uns-->
<li class="menu-item">
<a href="/ueberuns"><i class='bx bx-group'></i> Über uns</a>
</li>
<!-- Link zur Kontakt Seite-->
<!-- Link zur Kontaktseite-->
<li class="menu-item">
<a href="/kontaktformular"><i class='bx bx-envelope'></i> Kontakt</a>
</li>

View File

@ -1,55 +1,58 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kontaktformular</title>
<link rel="stylesheet" href="./Styles/styles-main.css">
<link href="https://unpkg.com/boxicons@2.1.4/css/boxicons.min.css" rel="stylesheet">
<script src="/header_footer"></script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kontaktformular</title>
<link rel="stylesheet" href="./Styles/styles-main.css">
<link href="https://unpkg.com/boxicons@2.1.4/css/boxicons.min.css" rel="stylesheet">
<script src="/header_footer"></script>
</head>
<body>
<div class="wrapper">
<!-- Header -->
<div id="header"></div>
<!-- Header -->
<div id="header"></div>
<main>
<section style="padding: 40px 20px; max-width: 700px; margin: 0 auto;">
<h1>Kontaktieren Sie uns</h1>
<p style="margin-bottom: 30px;">Sie haben Fragen oder Anregungen? Schreiben Sie uns wir melden uns schnellstmöglich!</p>
<main>
<section style="padding: 40px 20px; max-width: 700px; margin: 0 auto;">
<h1>Kontaktieren Sie uns</h1>
<p style="margin-bottom: 30px;">Sie haben Fragen oder Anregungen? Schreiben Sie uns wir melden uns
schnellstmöglich!</p>
<form id="contact-form">
<div class="input-box">
<input type="text" name="name" placeholder="Ihr Name" required>
<i class='bx bx-user'></i>
</div>
<div class="input-box">
<input type="email" name="email" placeholder="Ihre E-Mail-Adresse" required>
<i class='bx bx-envelope'></i>
</div>
<div class="input-box">
<input type="text" name="betreff" placeholder="Betreff" required>
<i class='bx bx-edit-alt'></i>
</div>
<div class="input-box">
<textarea name="nachricht" placeholder="Ihre Nachricht" rows="6" style="width: 100%; padding: 12px 15px; border: 1px solid #ddd; border-radius: 5px; font-size: 16px;" required></textarea>
</div>
<button type="submit" class="btn">Nachricht senden</button>
</form>
</section>
</main>
<form id="contact-form">
<div class="input-box">
<input type="text" name="name" placeholder="Ihr Name" required>
<i class='bx bx-user'></i>
</div>
<div class="input-box">
<input type="email" name="email" placeholder="Ihre E-Mail-Adresse" required>
<i class='bx bx-envelope'></i>
</div>
<div class="input-box">
<input type="text" name="betreff" placeholder="Betreff" required>
<i class='bx bx-edit-alt'></i>
</div>
<div class="input-box">
<textarea name="nachricht" placeholder="Ihre Nachricht" rows="6"
style="width: 100%; padding: 12px 15px; border: 1px solid #ddd; border-radius: 5px; font-size: 16px;"
required></textarea>
</div>
<button type="submit" class="btn">Nachricht senden</button>
</form>
</section>
</main>
<!-- Footer -->
<div id="footer"></div>
<!-- Footer -->
<div id="footer"></div>
</div>
<script>
document.getElementById('contact-form').addEventListener('submit', function(e) {
e.preventDefault();
alert('Vielen Dank für Ihre Nachricht! Wir melden uns bald bei Ihnen.');
this.reset(); // Formular leeren
});
document.getElementById('contact-form').addEventListener('submit', function (e) {
e.preventDefault();
alert('Vielen Dank für Ihre Nachricht! Wir melden uns bald bei Ihnen.');
this.reset(); // Formular leeren
});
</script>
</body>
</html>

View File

@ -33,12 +33,12 @@
</section>
</main>
<!-- Fußzeiele -->
<!-- Fußzeile -->
<div id="footer"></div>
<script>
// Funktion zum Hinzufügen zum Warenkorb
function zumWarenkorbHinzufuegen(product) {
// Funktion zum Hinzufügen zum Warenkorb
function zumWarenkorbHinzufuegen(product) {
let warenkorb = JSON.parse(localStorage.getItem('warenkorb')) || [];
const existingProduct = warenkorb.find(p => p.product_id === product.id);

View File

@ -33,7 +33,7 @@
</section>
</main>
<!-- Fußzeiele -->
<!-- Fußzeile -->
<div id="footer"></div>
</div>

View File

@ -38,8 +38,8 @@
</div>
<script>
// Funktion zum Hinzufügen zum Warenkorb
function zumWarenkorbHinzufuegen(product) {
// Funktion zum Hinzufügen zum Warenkorb
function zumWarenkorbHinzufuegen(product) {
let warenkorb = JSON.parse(localStorage.getItem('warenkorb')) || [];
const existingProduct = warenkorb.find(p => p.product_id === product.id);

View File

@ -37,9 +37,9 @@
<div id="footer"></div>
</div>
<script>
// Funktion zum Hinzufügen zum Warenkorb
function zumWarenkorbHinzufuegen(product) {
<script>
// Funktion zum Hinzufügen zum Warenkorb
function zumWarenkorbHinzufuegen(product) {
let warenkorb = JSON.parse(localStorage.getItem('warenkorb')) || [];
const existingProduct = warenkorb.find(p => p.product_id === product.id);

View File

@ -38,7 +38,7 @@
</div>
<script>
// Funktion zum Hinzufügen zum Warenkorb
// Funktion zum Hinzufügen zum Warenkorb
function zumWarenkorbHinzufuegen(product) {
let warenkorb = JSON.parse(localStorage.getItem('warenkorb')) || [];