(function () {
function initializeFeedbackSwap() {
var widgets = document.querySelectorAll('[data-feedback-ssr-widget]');
for (var i = 0; i < widgets.length; i++) {
var widget = widgets[i];
if (widget.getAttribute('data-feedback-swap-initialized') === 'true') {
continue;
}
var serverContent = widget.querySelector('[data-feedback-ssr]');
var clientShell = widget.querySelector('[data-feedback-client-shell]');
if (!clientShell) {
continue;
}
widget.setAttribute('data-feedback-swap-initialized', 'true');
(function (currentWidget, currentServerContent, currentClientShell) {
var observer = null;
var readyReceived = false;
function parseCount() {
var countElement = currentClientShell.querySelector('.feedback-average-count');
var text = countElement ? (countElement.textContent || '') : '';
var match = text.match(/\(\s*(\d+)\s*\)/);
return match ? parseInt(match[1], 10) : null;
}
function clientIsComplete(expectedCount) {
var actualCount = parseCount();
var loading = currentClientShell.querySelector('.loading-hint');
if (actualCount === null || loading) {
return false;
}
if (typeof expectedCount === 'number' && actualCount !== expectedCount) {
return false;
}
return true;
}
function swapToClient(expectedCount) {
if (!readyReceived || !clientIsComplete(expectedCount)) {
return;
}
currentClientShell.style.display = '';
currentClientShell.removeAttribute('aria-hidden');
if (currentServerContent && currentServerContent.parentNode) {
currentServerContent.parentNode.removeChild(currentServerContent);
}
if (observer) {
observer.disconnect();
}
}
currentClientShell.setAttribute('aria-hidden', 'true');
currentClientShell.addEventListener('feedback:client-ready', function (event) {
var detail = event && event.detail ? event.detail : {};
var count = Number(detail.count);
if (!isFinite(count) || count < 0) {
return;
}
readyReceived = true;
swapToClient(count);
});
/*
* Conservative fallback for cached client bundles:
* never reveal the client shell merely because markup exists.
* It must contain a real numeric count and no loading hint.
*/
observer = new MutationObserver(function () {
if (readyReceived) {
swapToClient(parseCount());
}
});
observer.observe(currentClientShell, {
childList: true,
subtree: true,
characterData: true
});
})(widget, serverContent, clientShell);
}
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', initializeFeedbackSwap);
} else {
initializeFeedbackSwap();
}
})();
(function () {
function parseReviewCount(shell) {
var countElement = shell.querySelector('.feedback-average-count');
var text = countElement ? (countElement.textContent || '') : '';
var match = text.match(/\(\s*(\d+)\s*\)/);
if (match) {
return parseInt(match[1], 10);
}
if (countElement) {
countElement.textContent = ' (0)';
}
return 0;
}
function updateEmptyState(widget, shell) {
if (!shell) {
return;
}
var count = parseReviewCount(shell);
var isLoading = !!shell.querySelector('.loading-hint');
var stars = shell.querySelector('.feedback-stars-average');
var bars = shell.querySelector('.feedback-bars');
var message = shell.querySelector('.feedback-empty-state');
var row = shell.querySelector('.row.my-2');
var leftColumn = row ? row.querySelector('.col-sm-6') : null;
if (count === 0 && !isLoading) {
if (stars) {
stars.style.display = 'none';
}
if (bars) {
bars.style.display = 'none';
}
if (!message && leftColumn) {
message = document.createElement('p');
message.className = 'feedback-empty-state text-muted mb-0';
message.textContent = widget.getAttribute('data-feedback-empty-state-text') ||
'Für diesen Artikel wurden noch keine Kundenrezensionen verfasst.';
leftColumn.insertBefore(message, leftColumn.firstChild);
}
} else if (count > 0) {
if (stars) {
stars.style.display = '';
}
if (bars) {
bars.style.display = '';
}
if (message && message.parentNode) {
message.parentNode.removeChild(message);
}
}
}
function initializeEmptyStates() {
var widgets = document.querySelectorAll('[data-feedback-ssr-widget]');
for (var i = 0; i < widgets.length; i++) {
var widget = widgets[i];
if (widget.getAttribute('data-feedback-empty-state-initialized') === 'true') {
continue;
}
widget.setAttribute('data-feedback-empty-state-initialized', 'true');
(function (currentWidget) {
var observer = new MutationObserver(function () {
var shell = currentWidget.querySelector('[data-feedback-client-shell]') || currentWidget;
updateEmptyState(currentWidget, shell);
});
observer.observe(currentWidget, {
childList: true,
subtree: true,
characterData: true
});
var shell = currentWidget.querySelector('[data-feedback-client-shell]') || currentWidget;
updateEmptyState(currentWidget, shell);
})(widget);
}
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', initializeEmptyStates);
} else {
initializeEmptyStates();
}
})();
{"@context":"https:\/\/schema.org","@type":"Product","@id":"https:\/\/www.mephisto-tools.com\/werkzeug\/werkzeugwagen\/werkzeugwagen-leer_71013_14453#product","name":"Sonderposten Werkzeugwagen mit 7 Schubladen -ohne Werkzeug-","url":"https:\/\/www.mephisto-tools.com\/werkzeug\/werkzeugwagen\/werkzeugwagen-leer_71013_14453\/","description":"Robuster leerer Werkstattwagen mit 7 Schubladen, pulverbeschichtetem Stahl, Soft-Close und Rollen \u2013 ideal f\u00fcr flexible Werkstatt-Organisation.","sku":"71013","productID":"71013","brand":{"@type":"Brand","name":"Mephisto"},"category":"Werkzeug > Werkzeugwagen","image":["https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Sonderposten-Werkzeugwagen-mit-7-Schubladen--ohne-Werkzeug--71013-Werkzeugwagen-Test-71013-IMG-0023neu.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Sonderposten-Werkzeugwagen-mit-7-Schubladen--ohne-Werkzeug--71013-Werkzeugwagen-Test-71013-IMG-0024neu.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Sonderposten-Werkzeugwagen-mit-7-Schubladen--ohne-Werkzeug--71013-Werkzeugwagen-Test-71013-IMG-0025neu.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Sonderposten-Werkzeugwagen-mit-7-Schubladen--ohne-Werkzeug--71013-Werkzeugwagen-Test-71013-IMG-0027neu.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Werkzeugwagen-Test-71013-IMG-0028.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Werkzeugwagen-Test-71013-IMG-0029.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Werkzeugwagen-Test-71013-IMG-0030.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Werkzeugwagen-Test-71013-IMG-0032.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Werkzeugwagen-Test-71013-IMG-0023.jpg","https:\/\/images.mephisto-tools.com\/item\/images\/71013\/full\/Werkzeugwagen-Test-71013-IMG-0024.jpg"],"gtin13":"4251059795621","offers":{"@type":"Offer","@id":"https:\/\/www.mephisto-tools.com\/werkzeug\/werkzeugwagen\/werkzeugwagen-leer_71013_14453#offer","price":"220.00","priceCurrency":"EUR","availability":"https:\/\/schema.org\/InStock","itemCondition":"https:\/\/schema.org\/NewCondition","url":"https:\/\/www.mephisto-tools.com\/werkzeug\/werkzeugwagen\/werkzeugwagen-leer_71013_14453\/","seller":{"@type":"Organization","name":"Four & More GmbH","@id":"https:\/\/www.mephisto-tools.com\/#organization","url":"https:\/\/www.mephisto-tools.com\/","hasMerchantReturnPolicy":{"@type":"MerchantReturnPolicy","returnPolicyCategory":"https:\/\/schema.org\/MerchantReturnFiniteReturnWindow","merchantReturnDays":14,"returnMethod":"https:\/\/schema.org\/ReturnByMail","returnFees":"https:\/\/schema.org\/ReturnFeesCustomerResponsibility","refundType":"https:\/\/schema.org\/FullRefund","@id":"https:\/\/www.mephisto-tools.com\/#merchant-return-policy","applicableCountry":"DE","returnPolicyCountry":"DE","merchantReturnLink":"https:\/\/www.mephisto-tools.com\/widerrufsrecht\/"}}},"aggregateRating":{"@type":"AggregateRating","ratingValue":5,"reviewCount":3,"bestRating":5,"worstRating":1},"review":[{"@type":"Review","author":{"@type":"Person","name":"Gerd"},"reviewRating":{"@type":"Rating","ratingValue":5,"bestRating":5,"worstRating":1},"reviewBody":"Habe den Werkzeugwagen in Kleinanzeigen gesehen, bin sehr zufrieden.","datePublished":"2026-06-15","name":"Solider Wagen"},{"@type":"Review","author":{"@type":"Person","name":"Bernd"},"reviewRating":{"@type":"Rating","ratingValue":5,"bestRating":5,"worstRating":1},"reviewBody":"Ich hab hier schonmal einen Werkstattwagen bestellt. Es lief alles problemlos mit der Anlieferung. Der Werkstattwagen war innerhalb von 3 Tagen nach Bestellung bei mir. Vielen Dank an die IDS Group f\u00fcr die schnelle und reibungslose Lieferung. Auch danke ich den Mephisto Team f\u00fcr ihre tolle und z\u00fcgige Arbeit. Klare Kaufempfehlung. Danke","datePublished":"2026-03-28","name":"Stabiler sch\u00f6ner Werkstattwagen."},{"@type":"Review","author":{"@type":"Person","name":"Ahmed"},"reviewRating":{"@type":"Rating","ratingValue":5,"bestRating":5,"worstRating":1},"reviewBody":"Fairer Preis, kann man einwandfrei benutzen.","datePublished":"2026-03-26","name":"Guter Preis"}]}
Solider Wagen
Habe den Werkzeugwagen in Kleinanzeigen gesehen, bin sehr zufrieden.
Gerd