Hermes
7dd8023222
-m
2026-06-04 17:23:49 +00:00
Hermes
c737312ada
fix(css): mobile nav overflow, hero-bg as <img>, map wrapper class
...
- mobile (≤900px): hide .nav-cta (was overflowing viewport by 65px)
- .nav-hamburger span: center inside button via left:50%; top:50%
- .nav-hamburger.active states: add translate(-50%,-50%) so the X
lines stay centered after rotation
- .hero-bg: switch from background-* to object-fit/object-position
(was an <img> but CSS targeted background-image → 1024px wide
hero-bg broke mobile layout)
- responsive: also override nav.scrolled padding on mobile
(specificity 0,1,1 > 0,0,1 → 3rem padding stayed in effect,
pushing the hamburger off-screen with width:0 on scroll)
- home/index.php: rename lage-map → lage-map-wrapper so the
existing .lage-map-wrapper CSS (border, margin-top: 3rem,
overflow: hidden, full-width 450px iframe) actually applies
2026-06-04 16:39:05 +00:00
Hermes
d9b4c71735
fix(css): replace deprecated clip: rect() with clip-path: inset(50%) — unblocks deploy-test.yml
Deploy Feature Branch to Test / PHP Syntax Check (push) Successful in 56s
Lint / PHP Syntax Check (push) Successful in 1m0s
Deploy Feature Branch to Test / CSS Lint (stylelint) (push) Successful in 1m47s
Deploy Feature Branch to Test / HTML Lint (htmlhint) (push) Successful in 1m49s
Lint / HTML Lint (htmlhint) (push) Successful in 1m16s
Lint / CSS Lint (stylelint) (push) Successful in 1m24s
Lint / PHP Syntax Check (pull_request) Successful in 37s
PHPUnit / PHP Unit Tests (push) Failing after 45s
Deploy Feature Branch to Test / Deploy to Test Environment (push) Successful in 38s
PHPUnit / PHP Unit Tests (pull_request) Failing after 56s
Lint / CSS Lint (stylelint) (pull_request) Successful in 1m23s
Lint / HTML Lint (htmlhint) (pull_request) Successful in 1m28s
2026-06-04 11:52:57 +00:00
Hermes
13a25aded2
feat(i18n): accessibility - per-field form errors, landmark aria-labels, tests ( closes #76 )
2026-06-04 11:04:06 +00:00
Hermes
0186de90ec
feat(i18n): responsive locale-switcher with SVG flags ( closes #75 )
2026-06-04 09:44:40 +00:00
Hermes
ce21242308
feat(i18n): LocaleController switcher with open-redirect protection ( closes #73 )
...
- App\Controllers\LocaleController: GET /locale?set=xx&return=/path
- Sets 1-year cookie (HttpOnly=false for SSR, SameSite=Lax, Secure on HTTPS)
- 302 redirect to explicit return URL > Referer > /
- Pure buildResponse() helper for unit tests (no headers/exit)
- current() helper: resolves locale from $_GET/$_COOKIE/Accept-Language
- safeRedirect: rejects absolute URLs, protocol-relative (//evil.com),
backslash tricks (\\evil.com), javascript:/data: schemes
- 28 PHPUnit tests (LocaleControllerTest), all green
- Total project tests now: 92
2026-06-04 08:57:33 +00:00
b774bd0363
fix: scroll-class check on load, hero null guard, JS syntax fix
Lint / PHP Syntax Check (push) Has been cancelled
Lint / CSS Lint (stylelint) (push) Has been cancelled
Lint / HTML Lint (htmlhint) (push) Has been cancelled
2026-06-02 23:50:55 +02:00
ad4284733c
fix: solid navbar background on scroll ( closes #68 )
Lint / PHP Syntax Check (push) Has been cancelled
Lint / CSS Lint (stylelint) (push) Has been cancelled
Lint / HTML Lint (htmlhint) (push) Has been cancelled
2026-06-02 23:50:54 +02:00
1a72210608
Merge pull request 'feat: PHPUnit Test-Infrastruktur und Router-Tests' ( #64 ) from feature/phpunit-tests into main
Lint / PHP Syntax Check (push) Successful in 33s
Lint / CSS Lint (stylelint) (push) Successful in 1m12s
Lint / HTML Lint (htmlhint) (push) Successful in 1m9s
2026-05-22 21:33:32 +02:00
greggy
3a30abc05e
fix: replace custom autoloader with composer PSR-4 autoloader
...
Deploy Feature Branch to Test / deploy (push) Successful in 29s
Lint / PHP Syntax Check (push) Successful in 37s
Lint / CSS Lint (stylelint) (push) Successful in 1m17s
Lint / HTML Lint (htmlhint) (push) Successful in 1m15s
Lint / PHP Syntax Check (pull_request) Successful in 32s
Lint / CSS Lint (stylelint) (pull_request) Successful in 1m12s
Lint / HTML Lint (htmlhint) (pull_request) Successful in 1m8s
The custom autoloader used lowercase directory names which broke
after renaming app/core/ → app/Core/ and app/controllers/ → app/Controllers/
for PSR-4 compliance.
2026-05-22 19:19:28 +00:00
3db7dc8971
fix( #58 ): remove broken getElementById('contactForm') stub
...
Deploy Feature Branch to Test / deploy (push) Successful in 26s
Lint / PHP Syntax Check (push) Successful in 35s
Lint / CSS Lint (stylelint) (push) Successful in 1m15s
Lint / HTML Lint (htmlhint) (push) Successful in 1m11s
Lint / PHP Syntax Check (pull_request) Successful in 39s
Lint / CSS Lint (stylelint) (pull_request) Successful in 1m13s
Lint / HTML Lint (htmlhint) (pull_request) Successful in 1m12s
The JS had a dangling document.getElementById('contactForm') call that
did nothing - no event handler attached, no return value used.
Form handling is entirely server-side (PHP POST → redirect to #form-result).
No JS form intervention needed.
Closes #58
2026-05-22 14:14:23 +00:00
e30bc5704b
Merge PR #59 : remove old haus-schleusingen.html references ( fixes #56 )
Lint / PHP Syntax Check (push) Successful in 36s
Lint / CSS Lint (stylelint) (push) Successful in 1m25s
Lint / HTML Lint (htmlhint) (push) Successful in 1m12s
2026-05-22 14:05:29 +00:00
a170afa7c0
fix: remove mailto handler and fix formSuccess element ID (refs #57 , #58 )
Lint / PHP Syntax Check (pull_request) Manual approval
Lint / CSS Lint (stylelint) (pull_request) Manual approval
Lint / HTML Lint (htmlhint) (pull_request) Manual approval
Deploy Feature Branch to Test / deploy (push) Manual approval
Lint / PHP Syntax Check (push) Manual approval
Lint / CSS Lint (stylelint) (push) Manual approval
Lint / HTML Lint (htmlhint) (push) Successful in 1m12s
2026-05-22 13:57:21 +00:00
148b4849fd
fix: remove all references to old haus-schleusingen.html (refs #56 )
Deploy Feature Branch to Test / deploy (push) Successful in 25s
Lint / PHP Syntax Check (push) Successful in 32s
Lint / CSS Lint (stylelint) (push) Successful in 1m15s
Lint / HTML Lint (htmlhint) (push) Successful in 1m11s
Lint / PHP Syntax Check (pull_request) Successful in 34s
Lint / CSS Lint (stylelint) (pull_request) Successful in 1m15s
Lint / HTML Lint (htmlhint) (pull_request) Successful in 1m11s
2026-05-22 13:38:33 +00:00
2d9f1838b6
fix(security): add CSP and security headers via .htaccess ( #41 )
...
Deploy Feature Branch to Test / deploy (push) Successful in 25s
Lint / PHP Syntax Check (push) Successful in 39s
Lint / CSS Lint (stylelint) (push) Successful in 1m25s
Lint / HTML Lint (htmlhint) (push) Successful in 1m10s
Lint / PHP Syntax Check (pull_request) Successful in 34s
Lint / CSS Lint (stylelint) (pull_request) Successful in 1m12s
Lint / HTML Lint (htmlhint) (pull_request) Successful in 1m8s
- Content-Security-Policy: strict CSP for static landingpage
- X-Content-Type-Options: nosniff
- X-Frame-Options: SAMEORIGIN
- Referrer-Policy: strict-origin-when-cross-origin
Fix #41
2026-05-21 23:04:52 +00:00
1aedcaf314
refactor: Umstellung auf Mini-MVC-Architektur (Issue #46 )
...
Deploy Feature Branch to Test / deploy (push) Successful in 24s
- Front Controller Pattern mit public/index.php als Einstiegspunkt
- Eigenes Routing (App\Core\Router) ohne externes Framework
- Controller: HomeController, ImpressumController, DatenschutzController
- Views mit gemeinsamem Layout (app/views/layouts/main.php)
- PSR-4 Autoloading
- Statische Assets nach public/ verschoben
- Alte Dateien (index.php, impressum.html, datenschutz.html) geloescht
- 301-Redirects fuer alte URLs
- PHP 8.5 kompatibel
- Apache DocumentRoot auf public/ gesetzt
2026-05-19 14:38:38 +00:00