diff --git a/prerender.cjs b/prerender.cjs
index e31751c..c7f32fa 100644
--- a/prerender.cjs
+++ b/prerender.cjs
@@ -542,14 +542,23 @@ const renderApp = async (categoryData, socket) => {
let categoryPagesRendered = 0;
let categoriesWithProducts = 0;
- const allCategoriesPlusNeu = [...allCategories, {
- id: "neu",
- name: "Neuheiten",
- seoName: "neu",
- parentId: 209
- }];
+ const allCategoriesWithVirtual = [
+ ...allCategories,
+ {
+ id: "neu",
+ name: "Neuheiten",
+ seoName: "neu",
+ parentId: 209,
+ },
+ {
+ id: "bald",
+ name: "Demnächst",
+ seoName: "bald",
+ parentId: 209,
+ },
+ ];
- for (const category of allCategoriesPlusNeu) {
+ for (const category of allCategoriesWithVirtual) {
// Skip categories without seoName
if (!category.seoName) {
console.log(
diff --git a/prerender/data-fetching.cjs b/prerender/data-fetching.cjs
index 5c5aadb..0b1b6d0 100644
--- a/prerender/data-fetching.cjs
+++ b/prerender/data-fetching.cjs
@@ -42,7 +42,10 @@ const fetchCategoryProducts = (socket, categoryId) => {
"getCategoryProducts",
{
full: true,
- categoryId: categoryId === "neu" ? "neu" : parseInt(categoryId),
+ categoryId:
+ categoryId === "neu" || categoryId === "bald"
+ ? categoryId
+ : parseInt(categoryId),
language: 'de',
requestTranslation: false
},
diff --git a/src/components/AddToCartButton.js b/src/components/AddToCartButton.js
index ac113a7..0210278 100644
--- a/src/components/AddToCartButton.js
+++ b/src/components/AddToCartButton.js
@@ -10,6 +10,7 @@ import AddIcon from "@mui/icons-material/Add";
import RemoveIcon from "@mui/icons-material/Remove";
import ShoppingCartIcon from "@mui/icons-material/ShoppingCart";
import DeleteIcon from "@mui/icons-material/Delete";
+import NotificationsIcon from "@mui/icons-material/Notifications";
import { withI18n } from "../i18n/withTranslation.js";
if (!Array.isArray(window.cart)) window.cart = [];
@@ -144,11 +145,18 @@ class AddToCartButton extends Component {
fullWidth
variant="contained"
size={size || "medium"}
+ startIcon={}
sx={{
borderRadius: 2,
fontWeight: "bold",
backgroundColor: "#ffeb3b",
color: "#000000",
+ whiteSpace: "nowrap",
+ flexWrap: "nowrap",
+ "& .MuiButton-label": {
+ whiteSpace: "nowrap",
+ flexWrap: "nowrap",
+ },
"&:hover": {
backgroundColor: "#fdd835",
},
diff --git a/src/components/Content.js b/src/components/Content.js
index ec78c90..6d38d8d 100644
--- a/src/components/Content.js
+++ b/src/components/Content.js
@@ -341,6 +341,9 @@ class Content extends Component {
fetchCategoryData(categoryId) {
+ if (categoryId === 'bald') {
+ sessionStorage.setItem('filter_availability', '1');
+ }
const currentLanguage = this.props.languageContext?.currentLanguage || this.props.i18n?.language || 'de';
const cachedData = getCachedCategoryData(categoryId, currentLanguage);
if (cachedData) {
@@ -431,6 +434,18 @@ class Content extends Component {
} catch (err) {
console.error('Error finding category name in tree:', err);
}
+
+ if (!enhancedResponse.categoryName && !enhancedResponse.name) {
+ if (categoryId === 'neu') {
+ enhancedResponse.categoryName = this.props.t
+ ? this.props.t('navigation.new')
+ : 'Neuheiten';
+ } else if (categoryId === 'bald') {
+ enhancedResponse.categoryName = this.props.t
+ ? this.props.t('navigation.soon')
+ : 'Demnächst';
+ }
+ }
}
this.processData(enhancedResponse);
diff --git a/src/components/header/CategoryList.js b/src/components/header/CategoryList.js
index 6a4c2ff..04df62e 100644
--- a/src/components/header/CategoryList.js
+++ b/src/components/header/CategoryList.js
@@ -7,6 +7,7 @@ import Collapse from "@mui/material/Collapse";
import { Link } from "react-router-dom";
import HomeIcon from "@mui/icons-material/Home";
import FiberNewIcon from '@mui/icons-material/FiberNew';
+import LocalShippingIcon from "@mui/icons-material/LocalShipping";
import SettingsIcon from "@mui/icons-material/Settings";
import MenuIcon from "@mui/icons-material/Menu";
import CloseIcon from "@mui/icons-material/Close";
@@ -309,6 +310,62 @@ class CategoryList extends Component {
)}
+
+
{categories.length > 0 ? (
<>
diff --git a/src/i18n/locales/ar/navigation.js b/src/i18n/locales/ar/navigation.js
index a8630cb..c1c5b98 100644
--- a/src/i18n/locales/ar/navigation.js
+++ b/src/i18n/locales/ar/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "جديد",
+ "soon": "قريباً",
"home": "الرئيسية",
"aktionen": "العروض",
"filiale": "الفرع",
diff --git a/src/i18n/locales/bg/navigation.js b/src/i18n/locales/bg/navigation.js
index 50a1d3a..e62b4be 100644
--- a/src/i18n/locales/bg/navigation.js
+++ b/src/i18n/locales/bg/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Нови",
+ "soon": "Очаквайте скоро",
"home": "Начало",
"aktionen": "Промоции",
"filiale": "Клон",
diff --git a/src/i18n/locales/cs/navigation.js b/src/i18n/locales/cs/navigation.js
index ed1e679..d9dc647 100644
--- a/src/i18n/locales/cs/navigation.js
+++ b/src/i18n/locales/cs/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Novinky",
+ "soon": "Již brzy",
"home": "Domů",
"aktionen": "Akce",
"filiale": "Pobočka",
diff --git a/src/i18n/locales/de/navigation.js b/src/i18n/locales/de/navigation.js
index 60f017d..71d87d4 100644
--- a/src/i18n/locales/de/navigation.js
+++ b/src/i18n/locales/de/navigation.js
@@ -1,5 +1,7 @@
export default {
"home": "Startseite",
+ "new": "Neuheiten",
+ "soon": "Demnächst",
"aktionen": "Aktionen",
"filiale": "Filiale",
"categories": "Kategorien",
diff --git a/src/i18n/locales/el/navigation.js b/src/i18n/locales/el/navigation.js
index 900f79c..e0fe720 100644
--- a/src/i18n/locales/el/navigation.js
+++ b/src/i18n/locales/el/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Νέα",
+ "soon": "Σύντομα",
"home": "Αρχική",
"aktionen": "Προσφορές",
"filiale": "Κατάστημα",
diff --git a/src/i18n/locales/en/navigation.js b/src/i18n/locales/en/navigation.js
index 9c9b5a2..87d186e 100644
--- a/src/i18n/locales/en/navigation.js
+++ b/src/i18n/locales/en/navigation.js
@@ -1,5 +1,7 @@
export default {
"home": "Home", // Startseite
+ "new": "New arrivals", // Neuheiten
+ "soon": "Coming soon", // Demnächst
"aktionen": "Promotions", // Aktionen
"filiale": "Branch", // Filiale
"categories": "Categories", // Kategorien
diff --git a/src/i18n/locales/es/navigation.js b/src/i18n/locales/es/navigation.js
index 421d170..af396ab 100644
--- a/src/i18n/locales/es/navigation.js
+++ b/src/i18n/locales/es/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Novedades",
+ "soon": "Próximamente",
"home": "Inicio",
"aktionen": "Promociones",
"filiale": "Sucursal",
diff --git a/src/i18n/locales/fr/navigation.js b/src/i18n/locales/fr/navigation.js
index 6d28cc5..20b4b09 100644
--- a/src/i18n/locales/fr/navigation.js
+++ b/src/i18n/locales/fr/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Nouveautés",
+ "soon": "Bientôt",
"home": "Accueil",
"aktionen": "Promotions",
"filiale": "Agence",
diff --git a/src/i18n/locales/hr/navigation.js b/src/i18n/locales/hr/navigation.js
index 6bcb579..afce974 100644
--- a/src/i18n/locales/hr/navigation.js
+++ b/src/i18n/locales/hr/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Novi",
+ "soon": "Uskoro",
"home": "Početna",
"aktionen": "Promocije",
"filiale": "Podružnica",
diff --git a/src/i18n/locales/hu/navigation.js b/src/i18n/locales/hu/navigation.js
index 35c8de1..33ff7e7 100644
--- a/src/i18n/locales/hu/navigation.js
+++ b/src/i18n/locales/hu/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Újdonságok",
+ "soon": "Hamarosan",
"home": "Kezdőlap",
"aktionen": "Akciók",
"filiale": "Fiók",
diff --git a/src/i18n/locales/it/navigation.js b/src/i18n/locales/it/navigation.js
index 6b6189f..a993443 100644
--- a/src/i18n/locales/it/navigation.js
+++ b/src/i18n/locales/it/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Novità",
+ "soon": "In arrivo",
"home": "Home",
"aktionen": "Promozioni",
"filiale": "Filiale",
diff --git a/src/i18n/locales/pl/navigation.js b/src/i18n/locales/pl/navigation.js
index e00c001..7518af0 100644
--- a/src/i18n/locales/pl/navigation.js
+++ b/src/i18n/locales/pl/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Nowości",
+ "soon": "Wkrótce",
"home": "Strona główna",
"aktionen": "Promocje",
"filiale": "Oddział",
diff --git a/src/i18n/locales/ro/navigation.js b/src/i18n/locales/ro/navigation.js
index f7e6cc8..0517d44 100644
--- a/src/i18n/locales/ro/navigation.js
+++ b/src/i18n/locales/ro/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Noutăți",
+ "soon": "În curând",
"home": "Acasă",
"aktionen": "Promoții",
"filiale": "Sucursală",
diff --git a/src/i18n/locales/ru/navigation.js b/src/i18n/locales/ru/navigation.js
index 2346e2c..eed67f4 100644
--- a/src/i18n/locales/ru/navigation.js
+++ b/src/i18n/locales/ru/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Новинки",
+ "soon": "Скоро",
"home": "Главная",
"aktionen": "Акции",
"filiale": "Филиал",
diff --git a/src/i18n/locales/sk/navigation.js b/src/i18n/locales/sk/navigation.js
index df242fb..a26f91b 100644
--- a/src/i18n/locales/sk/navigation.js
+++ b/src/i18n/locales/sk/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Novinky",
+ "soon": "Čoskoro",
"home": "Domov",
"aktionen": "Akcie",
"filiale": "Pobočka",
diff --git a/src/i18n/locales/sl/navigation.js b/src/i18n/locales/sl/navigation.js
index 29e2313..f37dd22 100644
--- a/src/i18n/locales/sl/navigation.js
+++ b/src/i18n/locales/sl/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Novosti",
+ "soon": "Kmalu",
"home": "Domov",
"aktionen": "Promocije",
"filiale": "Poslovalnica",
diff --git a/src/i18n/locales/sq/navigation.js b/src/i18n/locales/sq/navigation.js
index 1358b1a..c901360 100644
--- a/src/i18n/locales/sq/navigation.js
+++ b/src/i18n/locales/sq/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Të reja",
+ "soon": "Së shpejti",
"home": "Kreu",
"aktionen": "Promocione",
"filiale": "Degë",
diff --git a/src/i18n/locales/sr/navigation.js b/src/i18n/locales/sr/navigation.js
index 6cc5bdd..4fb4d49 100644
--- a/src/i18n/locales/sr/navigation.js
+++ b/src/i18n/locales/sr/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Нови",
+ "soon": "Ускоро",
"home": "Početna",
"aktionen": "Promocije",
"filiale": "Filijala",
diff --git a/src/i18n/locales/sv/navigation.js b/src/i18n/locales/sv/navigation.js
index a05e650..4288464 100644
--- a/src/i18n/locales/sv/navigation.js
+++ b/src/i18n/locales/sv/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Nyheter",
+ "soon": "Snart",
"home": "Hem",
"aktionen": "Kampanjer",
"filiale": "Filial",
diff --git a/src/i18n/locales/tr/navigation.js b/src/i18n/locales/tr/navigation.js
index 0eda5bd..cf7af96 100644
--- a/src/i18n/locales/tr/navigation.js
+++ b/src/i18n/locales/tr/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Yeniler",
+ "soon": "Yakında",
"home": "Ana Sayfa",
"aktionen": "Promosyonlar",
"filiale": "Şube",
diff --git a/src/i18n/locales/uk/navigation.js b/src/i18n/locales/uk/navigation.js
index fceb9f8..f6154cc 100644
--- a/src/i18n/locales/uk/navigation.js
+++ b/src/i18n/locales/uk/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "Новинки",
+ "soon": "Незабаром",
"home": "Головна",
"aktionen": "Акції",
"filiale": "Філія",
diff --git a/src/i18n/locales/zh/navigation.js b/src/i18n/locales/zh/navigation.js
index c17221d..2011526 100644
--- a/src/i18n/locales/zh/navigation.js
+++ b/src/i18n/locales/zh/navigation.js
@@ -1,4 +1,6 @@
export default {
+ "new": "新品",
+ "soon": "即将上架",
"home": "首页",
"aktionen": "促销活动",
"filiale": "分店",