Commit Graph

268 Commits

Author SHA1 Message Date
sebseb7
9e9d9ada4a feat(sanitize-html): integrate sanitize-html for product descriptions
- Add sanitize-html package to sanitize product descriptions, ensuring safe rendering of HTML content.
- Update PrerenderProduct and ProductDetailPage components to utilize sanitize-html for improved security and content integrity.
- Enhance error handling in ProductDetailPage to fallback to plain text if HTML parsing fails.
2025-11-13 06:44:06 +01:00
sebseb7
2bb9a151a3 feat(i18n): add 'similarProducts' key to multiple language files
- Introduce 'similarProducts' translation key across various language files to enhance product detail pages.
- Update existing translations for improved clarity and consistency in product descriptions.
- Ensure proper localization support for the new key in Arabic, Bulgarian, Czech, Greek, French, Croatian, Hungarian, Italian, Polish, Romanian, Russian, Slovak, Slovenian, Albanian, Serbian, Swedish, Turkish, Ukrainian, and Chinese.
2025-11-12 07:46:19 +01:00
sebseb7
4ae9344b63 feat(i18n): enhance caching and data fetching for language support
- Update Content and ProductFilters components to include language in cache keys for category and product data.
- Modify componentDidUpdate to handle language changes, ensuring data is re-fetched or filtered appropriately.
- Improve state management by tracking the last fetched language, enhancing internationalization support across the application.
2025-11-12 07:26:35 +01:00
sebseb7
e00c226b9a feat(i18n): update product filtering on language change
- Enhance Content and ProductFilters components to re-filter products when the language changes or the translation function updates.
- Implement logic in componentDidUpdate to regenerate availability values and filter products accordingly, improving internationalization support.
2025-11-12 06:01:01 +01:00
sebseb7
cf12323dfa feat(carousel): shuffle products in ProductCarousel for enhanced display
- Update ProductCarousel to filter and shuffle a random selection of 15 products with images for display.
- Implement a shuffleArray method using the Fisher-Yates algorithm to ensure a varied product presentation.
- Maintain seamless looping of products in the carousel for improved user experience.
2025-11-11 14:57:30 +01:00
sebseb7
95177c8df7 feat(carousel): add ProductCarousel component and integrate into SharedCarousel
- Introduce a new ProductCarousel component for displaying products in a scrollable format.
- Implement auto-scrolling functionality and manual navigation controls.
- Integrate ProductCarousel into SharedCarousel for the 'neu' category, enhancing the user interface and product visibility.
- Update Product component rendering within the carousel to ensure proper display of product details.
2025-11-02 09:54:54 +01:00
sebseb7
65f29144a6 ignorance 2025-10-31 21:12:58 +01:00
sebseb7
ded5fe330d feat(prerender): add 'Neuheiten' category and update data fetching logic
- Introduce a new category 'Neuheiten' to the rendering process by appending it to the existing categories.
- Modify the data fetching logic to handle the 'neu' category ID correctly.
- Enhance the UI by adding a button for the 'Neuheiten' category in the CategoryList component, complete with styling and internationalization support.
2025-10-21 02:10:49 +02:00
sebseb7
1c9d3d5ad0 feat(ProductDetailPage): implement attribute image loading and caching
- Add loadAttributeImages method to fetch and cache attribute images based on product attributes.
- Update product detail loading logic to include attribute image loading when product data is cached.
- Ensure efficient state management by caching results to minimize server requests.
2025-10-13 05:50:06 +02:00
sebseb7
0e29ab2a61 feat(ui): add similar products section to ProductDetailPage
- Introduce a new section displaying similar products on the ProductDetailPage.
- Update state management to include similar products data.
- Enhance internationalization by adding translation keys for similar products in English, German, and Spanish.
2025-10-08 06:26:00 +02:00
sebseb7
f8f2658653 chat windows full screen in mobileVertical 2025-10-05 22:21:03 +02:00
sebseb7
c82cd5ea78 Fix SearchBar React warnings and improve price display
- Fix duplicate key warning by using seoName-index combination
- Fix deprecated button prop warning by using component='button'
- Add proper button styling (remove default browser styles)
- Fix translation namespace access (use dot notation for nested keys)
- Improve price formatting and prominence in search suggestions
- Align VAT info and delivery time at same height level
2025-10-03 14:13:18 +02:00
sebseb7
f490f60cb7 Enhance SearchBar: remove loading state, add product details in suggestions
- Remove CircularProgress component and loadingSuggestions state
- Remove maxHeight limit from suggestions dropdown (already limiting to 8 results)
- Display price, VAT, and delivery days in suggestion list
- Use existing i18n translation keys (product:inclVat, delivery:times.*)
2025-10-03 13:21:27 +02:00
sebseb7
a13c786b0b feat(ui): implement share functionality in ProductDetailPage
Add a share button with a popper menu to the ProductDetailPage, allowing users to share products via various platforms including WhatsApp, Facebook, and email. Implement snackbar notifications for user feedback on successful actions. Enhance state management to handle share popper and snackbar visibility.
2025-09-18 15:35:13 +02:00
sebseb7
33ad3dd20b feat(ui): add product detail view button to Extras and Product selectors
Enhance the ExtrasSelector and ProductSelector components by introducing a button that links to detailed product views. The button features a ZoomInIcon and is styled for a consistent user experience. This addition improves navigation and accessibility for users seeking more information on products.
2025-09-12 10:36:50 +02:00
sebseb7
3f01ca12b4 feat(ui): add strikethrough original price display for rebated products
Update Product component to show original price with red strikethrough and reduced opacity above the current price when rebate > 0. Calculate original price by reversing rebate percentage. Adjust layout with relative positioning and z-index for overlay. Ensure rebate prop is passed from ProductList to support this feature.
2025-09-11 06:47:57 +02:00
sebseb7
71fb9bafcd feat(ui): add original price display for rebated products 2025-09-11 06:30:10 +02:00
sebseb7
8abaef8110 feat(GrowTentKonfigurator): implement add to cart functionality with component collection 2025-09-10 06:12:38 +02:00
sebseb7
4e708d0a14 feat(ui): add configurator navigation button to header
Introduce a new button in the CategoryList component that links to the
Konfigurator page, featuring a SettingsIcon and responsive styling for
mobile and desktop views. Includes text overlay effects for active state
visualization and i18n support for "home" label.
2025-09-09 19:35:31 +02:00
sebseb7
964a64a96a chore(GrowTentKonfigurator): adjust bundle discount rates
Reduce discount for 5+ items from 24% to 22% and for 7+ items from 36% to 28%.
Update calculation logic and UI display to reflect new rates.
2025-09-09 18:59:40 +02:00
sebseb7
0dd1e01018 feat(GrowTentKonfigurator): add periodic cache validity checking
Implement interval-based cache monitoring every 60 seconds to detect
misses or expirations across categories (Zelte, Lampen, Abluft-sets,
Set-zubehoer). Update per-category load status tracking to conditionally
render sections independently, improving UX by avoiding global loading
delays and ensuring timely refetches. Clear interval on unmount to prevent
memory leaks.
2025-09-09 18:10:08 +02:00
sebseb7
77ffe864b1 feat(GrowTentKonfigurator): add category load status tracking
Introduce categoryLoadStatus state to track loading for product categories.
Replace forceUpdate with setState to properly update loading status on socket response.
2025-09-09 11:39:44 +02:00
sebseb7
9d93ab8f2c feat: add short descriptions to product and extras displays
- Included kurzBeschreibung in the GrowTentKonfigurator for products, lamps, and ventilation components to enhance user information.
- Updated ExtrasSelector to display kurzBeschreibung for each extra, improving clarity and user experience.
2025-09-08 09:10:33 +02:00
sebseb7
09e015a529 fix(GrowTentKonfigurator): simplify force update logic on product list response
Removed conditional check for category 'Zelte' to always force re-render when new product list data arrives, ensuring the UI updates consistently with the latest information.
2025-09-08 08:38:49 +02:00
sebseb7
8ec92ad718 feat(seo): add short description to product LLM text
Include kurzBeschreibung in the generated LLM-friendly product details
for better SEO context, if available.
2025-09-08 05:32:59 +02:00
sebseb7
bccaf703ef feat(seo): prioritize short description for product meta tags
Now uses `kurzBeschreibung` for SEO meta description if available,
falling back to full `description` or name/article number otherwise.
This improves relevance and conciseness of meta tags.
2025-09-08 05:26:03 +02:00
sebseb7
3bf80ce3d7 fix: add pointerEvents to Content component for better interaction handling
- Included pointerEvents: 'none' in the Box of the Content component to prevent user interactions when necessary, enhancing overall UI behavior.
2025-09-08 00:10:19 +02:00
sebseb7
29a4bfc1c6 fix: update Content and ProductDetailPage components for improved UI and functionality
- Added pointerEvents: 'none' to the Content component's Box for better interaction handling.
- Adjusted spacing in the ProductDetailPage's Stack component for a more consistent layout.
- Enhanced disabled Chip styling in ProductDetailPage to improve visibility and user experience.
2025-09-07 12:14:03 +02:00
sebseb7
ea05a83901 u 2025-09-07 07:10:40 +02:00
sebseb7
12ed71b406 refactor: streamline GrowTentKonfigurator by removing unused variables and console logs
- Eliminated unnecessary tracking of response status and related logic for product list updates.
- Removed console logging statements to clean up the code and improve performance.
- Added a check to ensure all category data sections are loaded before rendering related components, enhancing user experience.
2025-09-07 06:09:14 +02:00
sebseb7
1ac253d5f3 format 2025-09-07 05:13:56 +02:00
sebseb7
cbb8dc463f feat: enhance ExtrasSelector and GrowTentKonfigurator for improved extras handling and UI
- Refactored ExtrasSelector to implement dynamic image loading with caching, improving performance and user experience.
- Updated GrowTentKonfigurator to fetch and display extras from a new category, ensuring accurate pricing and availability.
- Enhanced UI elements for better layout and clarity, including loading indicators and improved styling for extras display.
- Added handling for cases when no extras are available, providing clear feedback to users.
2025-09-04 10:45:55 +02:00
sebseb7
479e328e7c feat: update ExtrasSelector and GrowTentKonfigurator for VAT display and extras handling
- Refactored ExtrasSelector to include VAT information for each extra, enhancing clarity for users.
- Removed unused extras data from configuratorData.js to streamline the codebase.
- Updated GrowTentKonfigurator to dynamically retrieve extras from cached data, ensuring accurate pricing and VAT display for selected items.
- Improved UI layout for price and VAT information across various components for better user experience.
2025-09-04 10:31:59 +02:00
sebseb7
3660f80277 feat: improve ventilation selection logic in GrowTentKonfigurator
- Added functionality to reset ventilation selection when the tent shape changes and the current selection is not deliverable.
- Updated product filtering to include all size-matching products while marking their availability status.
- Enhanced UI to visually indicate non-deliverable ventilation options, improving user experience and clarity in selection.
- Adjusted price calculations to consider only deliverable ventilation products.
2025-09-04 07:07:21 +02:00
sebseb7
8862f0c6b8 feat: integrate ventilation selection into GrowTentKonfigurator
- Removed unused imports related to ventilation types and updated the product selection logic to dynamically filter ventilation options based on the selected tent shape.
- Implemented new methods to retrieve and filter available ventilation products, enhancing the user experience by ensuring only relevant options are displayed.
- Updated the UI to reflect the selected tent shape and provide feedback when no matching ventilation products are available.
- Improved overall rendering of the ventilation section with better styling and selection indicators.
2025-09-04 05:54:01 +02:00
sebseb7
21ae00b3f7 feat: enhance GrowTentKonfigurator with lamp filtering and improved UI
- Implemented filtering logic for lamps based on selected tent shape and availability.
- Updated rendering of lamp selection to dynamically display available options based on user input.
- Enhanced user interface with improved styling and selection indicators for better user experience.
- Added console logging for debugging purposes to track filtering and selection processes.
2025-09-03 11:57:06 +02:00
sebseb7
ead44afb69 feat: enhance GrowTentKonfigurator with tent filtering and improved rendering
- Added helper functions to filter tent products by shape and generate coverage descriptions based on dimensions.
- Implemented logic to handle product image rendering with caching and loading states.
- Updated tent selection process to dynamically find and display products based on selected tent shape.
- Enhanced user interface with loading indicators and improved layout for product selection.
2025-09-03 11:31:24 +02:00
sebseb7
1a5143a55d i18n 2025-08-31 07:19:31 +02:00
sebseb7
3a97c2571e fix: update MainPageLayout titles and content boxes for accuracy
- Corrected the title for the home section to reflect the correct translation.
- Swapped content boxes for the home and filiale sections to ensure accurate representation of their respective content.
- Enhanced localization by ensuring all section titles and links are correctly aligned with their intended content.
2025-08-31 07:08:39 +02:00
sebseb7
b3810fded7 fix: update Logo component styling for consistency
- Adjusted Logo component to explicitly set width and height attributes for the logo image.
- Ensured inline styles reflect the new dimensions for better rendering across different devices.
2025-08-31 06:46:34 +02:00
sebseb7
64bf798843 feat: enhance PrerenderHome layout with responsive placeholders
- Updated PrerenderHome component to improve layout responsiveness with additional padding and margin adjustments.
- Added invisible placeholders for SearchBar and ButtonGroup to maintain layout consistency across different screen sizes.
- Enhanced styling for child components to ensure proper alignment and spacing in both mobile and desktop views.
2025-08-31 06:43:20 +02:00
sebseb7
6a144f7441 feat: add prerendering support and improve component imports
- Introduced a new PrerenderHome component for development testing.
- Updated App.js to conditionally render the PrerenderHome based on the route.
- Refactored several components to use ES6 import/export syntax for consistency.
- Enhanced AppContent to manage dynamic theming and added a development-only FAB for prerender testing.
- Minor adjustments to props in PrerenderCategory for clarity.
2025-08-31 06:04:55 +02:00
sebseb7
2ac9baada0 feat: enhance language support in data fetching across components
- Updated Content, ProductDetailPage, and GrowTentKonfigurator to include current language context when emitting WebSocket requests for product and category data.
- Improved caching logic to ensure fresh data loading based on language changes.
- Enhanced localization by adding language parameters to data requests, improving user experience across different languages.
2025-08-09 10:06:43 +02:00
sebseb7
d40e311b51 feat: enhance ProductDetailPage to handle language changes and improve caching logic
- Added logic to detect language changes and clear relevant caches to ensure fresh data loading.
- Updated component state management to reset and reload product data upon language context updates.
- Improved debugging output for better tracking of language-related changes.
2025-08-06 09:50:37 +02:00
sebseb7
7a8d07ffc3 feat: improve product data handling in ProductDetailPage for better localization support
- Updated ProductDetailPage to utilize translated product data when available, enhancing localization.
- Adjusted caching logic to store translated products and their attributes.
- Ensured that component images and related data are loaded from the correct product source, improving user experience.
2025-08-06 08:05:32 +02:00
sebseb7
09cd68c144 feat: enhance ProductDetailPage with language context support for product view requests
- Updated the ProductDetailPage to include the current language context when emitting product view requests via WebSocket.
- Added logic to determine the appropriate language setting, improving localization and user experience.
- Enhanced debugging output for better tracking of language-related issues.
2025-08-06 07:46:16 +02:00
sebseb7
97fd7ee484 feat: update legal document translations and remove obsolete files
- Added translations for legal documents related to consumer rights, battery disposal, and data protection across multiple languages.
- Removed outdated legal-agb.js and legal-datenschutz.js files to streamline the localization structure.
- Improved existing translations for clarity and consistency in legal terminology.
2025-08-05 19:34:11 +02:00
sebseb7
22a0f78db2 feat: enhance AGB component with improved translation support for delivery, payment, and consumer rights
- Updated the AGB component to utilize specific translation functions for delivery, payment, and consumer-related legal terms.
- Improved localization by ensuring all relevant sections are translated correctly based on the context.
- Maintained fallback text for untranslated terms to ensure clarity for users.
2025-08-05 18:30:47 +02:00
sebseb7
55d9f6a543 feat: update data protection legal documents and enhance translation support
- Added new legal documents for data protection, including basic, customer, Google orders, newsletter, chatbot, cookies, and rights.
- Updated the main Datenschutz component to utilize the new translation files for improved localization.
- Removed the old legal-datenschutz.js file to streamline the structure and ensure clarity in legal documentation.
2025-08-05 18:22:50 +02:00
sebseb7
c1d2205e6c feat: update legal document translations and add new language support
- Replaced the existing legal document files with more specific ones for delivery, payment, and consumer rights.
- Added new legal documents related to data protection, including basic, customer, Google orders, newsletter, chatbot, cookies, and rights.
- Introduced Albanian language support in the translation files and language switcher component.
- Enhanced the translation functions to ensure structural files are copied correctly for new languages.
2025-08-05 18:17:08 +02:00