Commit Graph

  • 17b08df283 Content checks: flag placeholder images instead of counting them as done main orascheandClaude Fable 5.1 2026-11-13 18:47:12 +01:00
  • 20bcbeb731 Page content check for markets and solutions (vitec_pagecheck) orascheandClaude Fable 5.1 2026-11-13 11:44:41 +01:00
  • 47c8e2902f Market pages: elements for the Figma structure (0124-FE) orascheandClaude Fable 5.1 2026-11-12 19:14:05 +01:00
  • 6a00926b89 vitec:ssr-health --test-mail: send a sample alert through the real alert path orascheandClaude Opus 5.5 2026-11-12 15:39:53 +01:00
  • 4f47382679 Products menu: single-product overviews link to the product (spec v1.33) orascheandClaude Fable 5.1 2026-11-12 13:11:56 +01:00
  • 8031247acf Page JSON without mainNavigation, i18n and favicons (0110-FE) orascheandClaude Fable 5.1 2026-11-12 12:54:12 +01:00
  • e14f94ba63 SSR auto-purge: purge only the pages that show a saved record, megamenu purges everything orascheandClaude Opus 5.5 2026-11-12 12:16:44 +01:00
  • 06b9bc8293 SSR cockpit: label the response time, leave test reports out of the client error counts (0114-FE) orascheandClaude Opus 5.5 2026-11-12 11:42:57 +01:00
  • 4bc38b1760 Product content check as page content (vitec_productcheck) orascheandClaude Fable 5.1 2026-11-12 11:34:59 +01:00
  • b36dceb486 Scheduler: VITEC tasks instead of separate crontab lines orascheandClaude Opus 5.5 2026-11-11 11:21:53 +01:00
  • 90cb2faaf9 SSR alert mail recipients maintainable in the site settings orascheandClaude Opus 5.5 2026-11-11 11:13:37 +01:00
  • 994f9f2a1b SSR cockpit and dashboard tiles: info button with tooltip orascheandClaude Opus 5.5 2026-11-11 11:05:33 +01:00
  • 62f3f5394e SSR dashboard tiles in the cockpit look orascheandClaude Opus 5.5 2026-11-11 10:59:49 +01:00
  • cda26947f2 Ordner mit genau einer Uebersichtsseite leiten auf diese (RF Gateway, AV over IP & KVM) orascheandClaude Fable 5.1 2026-11-11 10:59:02 +01:00
  • 1b72e65a1d 301 fuer die /products-Gruppenordner auf /products (Entscheidung Harry 11.11.) orascheandClaude Fable 5.1 2026-11-11 10:56:43 +01:00
  • 67ded6e502 SSR module: dark VITEC cockpit with live charts orascheandClaude Opus 5.5 2026-11-11 10:52:46 +01:00
  • a9923e19e0 Paginierte/gefilterte Listen: eigener Titel und Description (Page N, Kategorie) orascheandClaude Fable 5.1 2026-11-11 10:49:48 +01:00
  • 8cdcd99eb3 Why-VITEC-Band auf den 3 alten Kategorieseiten (0106-FE, Entscheidung Harry) orascheandClaude Fable 5.1 2026-11-11 10:25:29 +01:00
  • 086a178341 SSR module: rebuilt on TYPO3 module layout, cards and core components orascheandClaude Fable 5.1 2026-11-11 10:15:42 +01:00
  • 07f74e372b Antworten auf 0100/0102/0104/0108-FE: Canonical paginierter Listen, JSON-LD-Breadcrumb auf den Datensatz, Story-Liste ohne crops, Startseiten-Daten orascheandClaude Fable 5.1 2026-11-11 10:14:49 +01:00
  • 5824981e2b Overview-Import: Why-VITEC-Karten als icon_card (0106-FE) orascheandClaude Fable 5.1 2026-11-11 10:11:32 +01:00
  • da2ca2690d SSR module: live progress bar for cache warming orascheandClaude Fable 5.1 2026-11-10 19:40:46 +01:00
  • f4f18e913a Produkt-Uebersichtsseiten: Agentur-Texte aus den "Enriched"-Workbooks importiert orascheandClaude Fable 5.1 2026-11-10 19:37:15 +01:00
  • 2aa8865b23 Tote Partner-Links in alten News entlinkt (22 Links, 10 Artikel) orascheandClaude Fable 5.1 2026-11-10 19:17:11 +01:00
  • e357f42b81 Seobility-Crawl 2: Karten-Links, Platzhalter-News, Titel-Kontext ueber Ordner, Descriptions 155 Zeichen orascheandClaude Fable 5.1 2026-11-10 19:08:34 +01:00
  • 4b6731786d News: Canonical auf Success Story (Feld vitec_canonical_usecase), 13 Paare gesetzt orascheandClaude Fable 5.1 2026-11-10 18:20:03 +01:00
  • f7b1eacecb Dubletten-Bereinigung nach Seobility: Produkt-Kopie, 10 News, Slugs, /about, Story-Texte orascheandClaude Fable 5.1 2026-11-10 18:12:34 +01:00
  • 37c4c116d0 SSR-Modul: Client errors mit Details-Aufklapper in jeder Zeile orascheandClaude Fable 5.1 2026-11-10 18:00:58 +01:00
  • 08c02276e5 Titel-Kontext: Import-Muster 'Titel | VITEC' als ungepflegt werten, direkte Elternseite orascheandClaude Fable 5.1 2026-11-10 17:56:10 +01:00
  • 33bdb8d856 Titel-Kontext auch bei kopiertem SEO-Titel; Description /solutions orascheandClaude Fable 5.1 2026-11-10 17:49:52 +01:00
  • 8a652063c5 Seobility-Report 2026-11-10: Backend-Befunde umgesetzt orascheandClaude Fable 5.1 2026-11-10 17:47:55 +01:00
  • 5121eaa000 Client-Error-Endpoint POST /api/vitec/client-error (0072-FE / 0077-BE) orascheandClaude Fable 5.1 2026-11-10 17:25:23 +01:00
  • ff6f86b829 Footer-Spalten: Linktexte an die Relaunch-Struktur angeglichen orascheandClaude Fable 5.1 2026-11-10 16:05:05 +01:00
  • be4bb44c40 Content-Block-Bilder als verarbeitete WebP mit srcset ausliefern orascheandClaude Fable 5.1 2026-11-10 15:53:20 +01:00
  • dc9b5fce47 News-Detail: FAQ-Band + Produktkarten, tote Datapath-Links migriert orascheandClaude Fable 5 2026-11-10 12:52:14 +01:00
  • 5c640d02f7 News: redaktionell eingefuegtes FAQPage-JSON als echtes Schema ausgeben orascheandClaude Fable 5 2026-11-10 11:36:48 +01:00
  • c9b00e6f10 News-Liste: serverseitige Pagination (Kontrakt 0070-FE) orascheandClaude Fable 5 2026-11-10 11:11:55 +01:00
  • be163a88c2 SSR health alerts: mail texts in English orascheandClaude Fable 5 2026-11-10 11:00:56 +01:00
  • 8f8ae039d4 Real JSON null for empty product feature; SSR warm-cache button and CLI orascheandClaude Fable 5.2 2026-11-10 10:59:24 +01:00
  • cb53ff67ee SSR dashboard: new errors-and-hit-rate tile fed by /__stats samples in vitec:ssr-health (stat_* columns in healthlog) orascheandClaude Fable 5 2026-11-09 22:51:13 +01:00
  • bc2e031b0c SSR health: alert mails on ok/down transitions + auto-failover to SPA after N consecutive misses (SSR_ALERT_EMAIL / SSR_FAILOVER_AFTER in var/vitec-ssr-purge.env) orascheandClaude Fable 5 2026-11-09 22:18:06 +01:00
  • b9736b9ac7 SEO-Audit 2026-11-09: Meta-Komposition, Sitemap, Redirects, robots.txt orascheandClaude Fable 5 2026-11-09 22:11:01 +01:00
  • be519f9bc1 Context menu purge: drop .js from the callback module specifier orascheandClaude Fable 5 2026-11-09 21:14:50 +01:00
  • 5b524bfce9 Page context menu: Purge from SSR cache orascheandClaude Fable 5 2026-11-09 21:10:30 +01:00
  • fa63871da7 SSR control center: English UI strings throughout orascheandClaude Fable 5 2026-11-09 21:03:40 +01:00
  • 91c2ceb5b1 Dashboard widgets: fix group name (systemInfo, not systemInformation) orascheandClaude Fable 5 2026-11-09 20:59:39 +01:00
  • 63f950f9db SSR control center: auto-purge webhook, dashboard tiles, backend module orascheandClaude Fable 5 2026-11-09 20:46:16 +01:00
  • d52d49974f SSR switch-on fix: proxy the DirectoryIndex homepage detour orascheandClaude Fable 5 2026-11-09 20:20:07 +01:00
  • d153cc2eba README: drop the dev basic auth credentials orascheandClaude Fable 5 2026-11-09 18:32:29 +01:00
  • 232aaf2ca8 SSR prep: asset proxy behind flag, forwarded proto, header hygiene orascheandClaude Fable 5 2026-11-09 18:20:21 +01:00
  • 351349ec1f JSON API: Cache-Control no-cache + ETag/304 revalidation orascheandClaude Fable 5 2026-11-09 17:03:05 +01:00
  • dcd713f222 Site settings: fill schema.org organization data, drop scaffold examples orascheandClaude Fable 5 2026-11-09 14:03:54 +01:00
  • 14623ed4fa gitignore: ignore all of config/system/, not just two files orascheandClaude Fable 5 2026-11-09 13:43:19 +01:00
  • 2c0da281bd SSR switch: site setting vitec.ssr.enabled gates .htaccess proxy to SSR node orascheandClaude Fable 5 2026-11-09 13:35:27 +01:00
  • bd7a145afa Products: categories and sub-categories become clickable pages orascheandClaude Opus 5.5 2026-11-05 12:05:04 +01:00
  • 73e4298b75 Insights spotlight: news from folders 11 + 442, source editable in the menu orascheandClaude Opus 5.5 2026-11-05 10:59:56 +01:00
  • ad1f3c179c why-vitec band: move it before the "Product range" intro orascheandClaude Fable 5 2026-11-04 20:51:42 +01:00
  • f525ce3c27 product-check: Features column with icon coverage orascheandClaude Fable 5 2026-11-04 20:17:50 +01:00
  • 6ff9c3e7a8 seed-product-features: two more icon-matching tiers orascheandClaude Fable 5 2026-11-04 20:03:50 +01:00
  • 46b12d4a58 product.features: Why-choose cards with icons (contract 0036-FE) orascheandClaude Fable 5 2026-11-04 19:55:01 +01:00
  • 3ccb9b149e Stage the 2026-11 product asset dump: ignore migrations/product_images_in2/ orascheandClaude Fable 5 2026-11-03 19:32:42 +01:00
  • d26c31e6d1 Product content check: live audit page under /product-check/ orascheandClaude Fable 5 2026-11-03 19:13:23 +01:00
  • ed3ced42b3 Product content check: live audit page under /product-check/ orascheandClaude Fable 5 2026-11-03 19:09:23 +01:00
  • 8e173b1a85 Hero placeholder fieldname: vitec_hero_bgimage (content block prefix) orascheandClaude Fable 5 2026-11-03 18:42:06 +01:00
  • 77661bf0b6 Datapath stories, grid repairs, menu v2 pure, hero placeholders, fec test orascheandClaude Fable 5 2026-11-03 18:29:56 +01:00
  • 9211c8a395 Megamenu: rail display for page trees, cache tags, editorial promo boxes orascheandClaude Opus 5.5 2026-11-02 17:35:23 +01:00
  • 9fb7f0ca77 Products: 20 overview pages and megamenu catalog v2 orascheandClaude Opus 5.5 2026-11-02 16:06:44 +01:00
  • da2ebdca23 Product detail: resources section layout 3 "Hardware option" orascheandClaude Opus 5.5 2026-11-02 15:11:26 +01:00
  • d87e64f73b Success stories: downloads and product sections become real plugins orascheandClaude Fable 5 2026-10-28 14:10:59 +01:00
  • 80f6da7949 Retire the six old-taxonomy category stubs under /products orascheandClaude Fable 5 2026-10-27 15:19:38 +01:00
  • b0690c4cdc Cards visible in the FE; /products cards wrapped into 33/33/33 grids orascheandClaude Fable 5 2026-10-27 15:10:24 +01:00
  • c8d653b39b Card images: product photos plus numbered placeholders on the new cards orascheandClaude Fable 5 2026-10-27 14:26:15 +01:00
  • c6147d020e Fill the /products portfolio page from the agency workbook orascheandClaude Fable 5 2026-10-27 14:12:39 +01:00
  • e2d4367d7a Products run: missing records, asset re-run, audit page, category pages orascheandClaude Fable 5 2026-10-27 13:31:03 +01:00
  • 8497dad06a Megamenu follow-ups: nav_hide honoured, entries insertable, page tiles orascheandClaude Fable 5 2026-10-27 12:08:26 +01:00
  • 6423b7c7f8 Megamenu goes visual: spotlight layout, page images on pagetree columns orascheandClaude Fable 5 2026-10-27 11:47:23 +01:00
  • 90c2f97c5b Market records: delete the dropped legacy set; defuse the rename map orascheandClaude Fable 5 2026-10-27 11:28:26 +01:00
  • 3b3ef470b0 Content pages: Insights / Support / Contact branches from the workbooks orascheandClaude Fable 5 2026-10-27 11:03:33 +01:00
  • c4ec979f78 Fill the /markets main page from "Markets Hero Page.xlsx" orascheandClaude Fable 5 2026-10-27 10:15:02 +01:00
  • 46049bf30d Product detail CR: resources band layout select, fields parked in Misc orascheandClaude Fable 5 2026-10-26 19:36:18 +01:00
  • 8adbe8cc90 Market record taxonomy aligned with the agency structure orascheandClaude Fable 5 2026-10-26 10:40:42 +01:00
  • a9a25e4b1e Engagament rename; redirects installed, CLI-queued and backfilled orascheandClaude Fable 5 2026-10-26 10:26:43 +01:00
  • 6b0b2a3511 Engagament rename; redirects installed, CLI-queued and backfilled orascheandClaude Fable 5 2026-10-26 10:19:16 +01:00
  • b1357a6ffe Megamenu: ship menu images as processed 640px webp orascheandClaude Fable 5 2026-10-23 14:13:56 +02:00
  • cbe46cdba2 Megamenu page-tree panels; generic slug normaliser orascheandClaude Fable 5 2026-10-23 14:10:57 +02:00
  • 303defe24d Markets branch: 11-market tree, sub-market import, hero pipeline orascheandClaude Fable 5 2026-10-23 13:52:43 +02:00
  • 115952a132 Product banners and photos: vitec:import-product-images orascheandClaude Fable 5 2026-10-23 13:05:32 +02:00
  • 3e2ebf3823 Solution group pages: layout 22 + Template-06 workbook import orascheandClaude Fable 5 2026-10-23 12:19:05 +02:00
  • d115ffb144 Sub-solutions filled from Joe's 39 workbooks; dummy assets wired orascheandClaude Fable 5 2026-10-19 18:51:21 +02:00
  • 74502e60a3 fe_comment: recipients are the FE users of the feedback group orasche 2026-10-09 16:09:07 +02:00
  • eb0d0d9ebc fe_comment: Feedback Overview content element in the page JSON orasche 2026-10-09 14:56:10 +02:00
  • 887caed2aa Products megamenu as a data-driven catalog with a Solr product type-ahead orasche 2026-10-09 13:40:23 +02:00
  • b5fcdb2b5a Megamenu entry: reload the form when the layout changes orascheandClaude Opus 5.5 2026-10-09 13:33:44 +02:00
  • 490bac500e Untrack daten.md (credentials) orascheandClaude Opus 5.5 2026-10-09 13:03:39 +02:00
  • 91ad5e6596 Search cards above the results, detail-page fallback for market/solution documents orasche 2026-10-09 12:59:12 +02:00
  • 8ead213bdf README: update the full-text search highlight orasche 2026-10-07 16:24:42 +02:00
  • 9b1ad202a9 Extend Solr search: content coverage, 14.0.2, news recency, result images orasche 2026-10-07 16:22:50 +02:00
  • 8e67f5db23 Sub-solution workbook pipeline on layout 5, fix element order in both importers - New, deliberately separate pipeline for sub-solutions (markets and solutions must never break each other): generator vitec:generate-subsolution-workbooks (list from the page tree below /solutions, 39 workbooks, every sub-solution matched to its record), SubsolutionWorkbookImporter + CLI vitec:import-subsolution-workbooks, and a "Sub-Solutions" tab in the VITEC Import module with its own inbox migrations/subsolutions_xlsx_in/ - Targets the existing template 5 "Solution Detail" without changing it: hero element in colPos 1, the remaining sections in fixed order in colPos 0, found again by CType on re-import; existing empty sub-solution pages are switched to layout 5, missing ones created hidden; detail_page set on the solution record - Workbook per the Figma "07 Solution Detail page": hero without video teaser, intro with headline and without learn-more/portfolio, extended icon list, own page-layout reference image - Shared content elements: market hero/intro/insights relabelled "Market/Solution", market intro gains the optional intro_headline field (new column, requires extension:setup) - Fix: DataHandler puts every NEW record with a positive pid at the top of its column, so pages built in one run came out reversed. Both importers now track the page order per colPos and write tt_content.sorting explicitly after the DataHandler run; re-applying repairs pages imported earlier (verified on the control-room sub-solution and sub-market page 443) - migrations/fill_test_subsolution.php: realistic test content from vitec.com copy and images for the control-room sub-solution - Docs section 5z orasche 2026-10-07 15:39:18 +02:00
  • 3d5459b8d2 Sub-market workbook import as a backend module tab - Extract the complete import logic (label-scan reading, page find-or-create, slot filling, content-idempotent image attach) from ImportSubmarketWorkbooksCommand into the shared service SubmarketWorkbookImporter; the CLI command and the new controller are thin shells around importFile(), so both entry points cannot drift. CLI regression verified: identical dry-run report for the reference workbook (12 elements, page 443) - New "Sub-Markets" tab in the VITEC Import module (SubmarketImportController + Import/Submarkets.html): upload multiple filled workbooks into the SAME inbox the CLI uses (migrations/submarkets_xlsx_in/), per-file checkboxes, dry-run and apply buttons, result cards with the familiar report and a direct link into the page module; backend dry-run verified against the CLI - Submitted filenames are whitelisted against the actual directory listing (no path traversal); uploads restricted to sanitized .xlsx basenames - Routes submarkets/submarket_upload/submarket_process in Modules.php, Sub-Markets tab link in the sibling module views, ok/danger badge colors in backend-import.css - Docs section 5y (incl. operations note: apply in small batches in the module, mass runs via CLI - image downloads run inside the web request) orasche 2026-10-05 15:35:40 +02:00
  • d496877a53 fe_comment: widget v2, overview link setting and inline mail images - Rebuild the widget server-backed: it renders only when GET state allows (logged-in FE user of the configured group), so the script tag is safe on public pages; form with mini rich text (bold/italic/ list), file attachment chips and Ctrl+V image paste - a paste lazily creates the draft feedback, uploads and inserts the image inline - Note pad badge mirrors the server item count; the pad button links to the overview page via new extension setting overviewPid, exposed as overviewUrl in GET state (slug lookup) - Embed /fileadmin images of notes into the feedback mail as CID parts: relative srcs are dead in mail clients and dev sits behind basic auth; attachment links stay absolute URLs - public/widget-test.html: dev test page, doubles as the reference implementation of the React login flow (fetch felogin JSON form incl. __RequestToken, urlencoded POST to /_json + form.action) - Docs section 5x (fe_comment v2 incl. CSRF login lesson, templateRootPaths.10 collision, cache:flush before extension:setup) orasche 2026-10-02 16:57:52 +02:00