Added overlay for creating own product feedback and ratings
This commit is contained in:
parent
ee766351bd
commit
1b2b2b0833
@ -633,3 +633,81 @@
|
||||
padding: 0.5rem 0;
|
||||
font-size: 0.85rem;
|
||||
}
|
||||
|
||||
/* ==========================================================
|
||||
REVIEW HINZUFÜGEN (Formular)
|
||||
========================================================== */
|
||||
|
||||
.review-add {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto 2rem;
|
||||
padding: 0 1.5rem;
|
||||
animation: fadeInUp 0.5s ease 0.4s both;
|
||||
}
|
||||
|
||||
.review-input-form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 1.2rem;
|
||||
}
|
||||
|
||||
/* --- Sterne-Auswahl (Radio-Button Trick) --- */
|
||||
.rating-input {
|
||||
display: flex;
|
||||
/* Dreht die Reihenfolge um für den Hover-Effekt */
|
||||
flex-direction: row-reverse;
|
||||
justify-content: flex-end;
|
||||
gap: 0.3rem;
|
||||
}
|
||||
|
||||
/* Versteckt die eigentlichen runden Radio-Buttons */
|
||||
.rating-input input[type="radio"] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Stylt die Labels (die Sterne) */
|
||||
.rating-input label {
|
||||
font-size: 2.2rem;
|
||||
color: #475569; /* Dunkelgrau für leere Sterne */
|
||||
cursor: pointer;
|
||||
transition: color 0.2s ease, transform 0.2s ease;
|
||||
}
|
||||
|
||||
/* Hover-Logik: Färbt den gehoverten/geklickten Stern und alle "folgenden" (durch row-reverse sind das die linken) */
|
||||
.rating-input label:hover,
|
||||
.rating-input label:hover ~ label,
|
||||
.rating-input input[type="radio"]:checked ~ label {
|
||||
color: #fbbf24; /* Das gleiche Gelb wie bei deinen bestehenden Sternen */
|
||||
}
|
||||
|
||||
/* Kleiner Pop-Effekt beim drüberfahren */
|
||||
.rating-input label:hover {
|
||||
transform: scale(1.15);
|
||||
}
|
||||
|
||||
/* --- Textarea --- */
|
||||
.review-comment-input {
|
||||
width: 100%;
|
||||
background: #1f2a3a;
|
||||
border: 1px solid #2f3c52;
|
||||
border-radius: 8px;
|
||||
padding: 1rem;
|
||||
color: #cbd5e1;
|
||||
font-family: inherit;
|
||||
font-size: 1rem;
|
||||
resize: vertical; /* Nuter kann das Feld nach unten größer ziehen */
|
||||
transition: all var(--transition-smooth);
|
||||
}
|
||||
|
||||
.review-comment-input:focus {
|
||||
outline: none;
|
||||
border-color: #4ade80; /* Passt zu deinem grünen Button-Stil */
|
||||
background: #243248;
|
||||
box-shadow: 0 0 0 3px rgba(74, 222, 128, 0.1);
|
||||
}
|
||||
|
||||
/* --- Button Positionierung --- */
|
||||
.review-input-form .auth__submit {
|
||||
align-self: flex-start; /* Button bleibt linksbündig und wird nicht über die ganze Breite gestreckt */
|
||||
padding: 0.8rem 2.5rem;
|
||||
}
|
||||
@ -335,38 +335,76 @@ $productId = isset($_GET['id']) ? (int)$_GET['id'] : 0;
|
||||
<div class="reviews">
|
||||
|
||||
<h2 class="reviews-title">Bewertungen</h2>
|
||||
<div class="reviews-all">
|
||||
<?php if (!empty($reviews)): ?>
|
||||
|
||||
<?php if (!empty($reviews)): ?>
|
||||
<?php foreach ($reviews as $review): ?>
|
||||
|
||||
<?php foreach ($reviews as $review): ?>
|
||||
<div class="review-card">
|
||||
|
||||
<div class="review-card">
|
||||
<div class="review-header">
|
||||
<div class="review-user">
|
||||
<?= htmlspecialchars($review['displayname']) ?>
|
||||
</div>
|
||||
|
||||
<div class="review-header">
|
||||
<div class="review-user">
|
||||
<?= htmlspecialchars($review['displayname']) ?>
|
||||
<div class="review-rating">
|
||||
<?php for ($i = 1; $i <= 5; $i++): ?>
|
||||
<span class="star <?= $i <= $review['rating'] ? 'filled' : '' ?>">★</span>
|
||||
<?php endfor; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="review-rating">
|
||||
<?php for ($i = 1; $i <= 5; $i++): ?>
|
||||
<span class="star <?= $i <= $review['rating'] ? 'filled' : '' ?>">★</span>
|
||||
<?php endfor; ?>
|
||||
<div class="review-comment">
|
||||
<?= nl2br(htmlspecialchars($review['comment'])) ?>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="review-comment">
|
||||
<?= nl2br(htmlspecialchars($review['comment'])) ?>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
|
||||
<?php else: ?>
|
||||
<div class="no-review">
|
||||
<p>Es gibt noch keine Bewertungen.</p>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<div class="review-add">
|
||||
<h2 class="reviews-title">Füge deine Bewertung hinzu!</h2>
|
||||
|
||||
<?php endforeach; ?>
|
||||
<div class="review-card">
|
||||
<form class="review-input-form" method="post" autocomplete="off">
|
||||
<input type="hidden" name="submit_review" value="1">
|
||||
|
||||
<?php else: ?>
|
||||
<div class="no-review">
|
||||
<p>Es gibt noch keine Bewertungen.</p>
|
||||
<div class="rating-input">
|
||||
<input type="radio" id="star5" name="rating" value="5" required />
|
||||
<label for="star5" title="5 Sterne">★</label>
|
||||
|
||||
<input type="radio" id="star4" name="rating" value="4" />
|
||||
<label for="star4" title="4 Sterne">★</label>
|
||||
|
||||
<input type="radio" id="star3" name="rating" value="3" />
|
||||
<label for="star3" title="3 Sterne">★</label>
|
||||
|
||||
<input type="radio" id="star2" name="rating" value="2" />
|
||||
<label for="star2" title="2 Sterne">★</label>
|
||||
|
||||
<input type="radio" id="star1" name="rating" value="1" />
|
||||
<label for="star1" title="1 Stern">★</label>
|
||||
</div>
|
||||
|
||||
<textarea class="review-comment-input" name="comment" rows="4"
|
||||
placeholder="Teile deine Meinung mit anderen!" required></textarea>
|
||||
|
||||
<input class="auth__submit" type="submit" value="Senden">
|
||||
</form>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user