4e359fe659
feat(auth): sync display name and job title from Microsoft Graph, fix tenant SSO form handling
...
Fetches displayName/jobTitle from Graph API and syncs them via SSO profile sync. Also fixes LDAP enabled state in tenant form, adds LDAP save on tenant create, and hardens LDAP port validation precedence.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-13 14:13:21 +02:00
5739cc1200
Refactor helper drift in lib: centralize theme/translation and remove app() hotspots
2026-03-19 08:23:14 +01:00
4871c6032e
feat: extract bookmarks as standalone module with MintyPHP\Module\Bookmarks namespace
...
Moves bookmarks from core hardcoding into modules/bookmarks/ as a
fully self-contained module, following the same pattern as addressbook.
Module contributions via platform slots:
- aside.tab_panel: bookmark sidebar panel
- topbar.right_item: bookmark toggle button
- layout.body_end_template: bookmark/group dialogs
- layout.head_style: bookmark CSS (form + sidebar)
- runtime.component: bookmark-save and bookmark-panel (phase: late)
- search.resource_item: bookmarks in global search (user-scoped via {{userId}})
Backend fully in module namespace (MintyPHP\Module\Bookmarks\*):
- Service: BookmarkService, BookmarkServicesFactory, BookmarkRepositoryFactory
- Repository: BookmarkRepository, BookmarkGroupRepository, BookmarkNavigationRepository
- Support: BookmarkUrlNormalizer
- Providers: BookmarksSessionProvider, BookmarksLayoutProvider, BookmarksSearchProvider
Core cleanup:
- Removed all bookmark-specific markup from core templates
- Removed core DI registrations for bookmark services
- Removed core bookmark pages, JS, CSS
- AuthSessionTenantContextService delegates to module SessionProvider
Architecture guards:
- NoBookmarksHardcodingTest: verifies zero bookmark references in core
- testModuleClassesUseModuleNamespace: prevents core namespace leakage
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 22:20:20 +01:00
d9805c45d3
fix: address code review findings for bookmark feature (H1–L5)
...
Fix broken tests (H1), align interface signatures with implementations (H3),
remove dead code (H4), add missing input guard (M1), replace raw $_SESSION
access with SessionStoreInterface (M2), sync update script schema (M4),
use shared getAppBase utility (L2), document fragment stripping (L3),
and apply app- CSS class prefix convention (L5).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 22:58:07 +01:00
9688848401
Global Boomarks
2026-03-14 21:45:58 +01:00
f4ce9f3378
docs: add class docblocks, business-rule comments, and transaction wrapper
...
- Add single-line class docblocks to all 59 repository classes and interfaces
describing scope and responsibility
- Add multi-line docblocks to key services documenting business rules:
AuthService (6-step login cascade), ImportService (3-phase CSV workflow),
TenantScopeService (strict/permissive modes), PermissionService (RBAC
resolution + two-tier caching), UserAccountService (atomicity + audit)
- Add transaction(callable) wrapper to DatabaseSessionRepository to DRY up
begin/commit/rollback boilerplate
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-13 21:58:51 +01:00
4b31fc7664
Repo Interface für tests
2026-03-05 08:26:51 +01:00
99db252f60
instances added god may help
2026-02-23 12:58:19 +01:00
25370a1a55
add composer-unused, comprehensive docs, and project restructure
...
- Add icanhazstring/composer-unused as dev dependency for dependency hygiene checks
- Add German documentation (docs/) covering architecture, conventions, workflows, and developer checklists
- Add API layer (ApiAuth, ApiBootstrap, ApiResponse), audit, scheduler, custom fields, and SSO services
- Add Microsoft OIDC SSO, API token management, and user lifecycle features
- Add swagger-ui vendor integration and OpenAPI spec
- Add production Docker setup and bin/ scripts
- Update composer dependencies, config, templates, and frontend assets throughout
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-22 15:27:35 +01:00
3eb9cc0ac4
big restructure
2026-02-11 19:28:12 +01:00