- Utworzono autoload/autoloader.php (hybrydowy PSR-4 + legacy) - Zmigrowano 7 entry pointów do centralnego autoloadera - Dodano PSR-4 mapowanie w composer.json (Domain, Shared, Admin, Frontend) - Utworzono Shared\Email\Email (PHPMailer, migracja z Helpers) - Utworzono Shared\Security\CsrfToken (random_bytes + hash_equals) - Wrappery w Helpers delegują do nowych klas - Zaktualizowano docs/PROJECT_STRUCTURE.md - Inicjalizacja PAUL (.paul/) z roadmapą 19 faz refaktoryzacji Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
33 lines
798 B
PHP
33 lines
798 B
PHP
<?php
|
|
/**
|
|
* Centralny autoloader — hybrydowy (PSR-4 + legacy class.*.php)
|
|
* Obsługuje namespace'y: Domain\, Shared\, Admin\, Frontend\, admin\, front\
|
|
*/
|
|
|
|
function __autoload_my_classes( $classname )
|
|
{
|
|
$base = __DIR__ . '/';
|
|
|
|
$q = explode( '\\', $classname );
|
|
$c = array_pop( $q );
|
|
|
|
// Savant3 — special case
|
|
if ( $c == 'Savant3' )
|
|
{
|
|
$f = $base . 'Savant3.php';
|
|
if ( file_exists( $f ) ) { require_once( $f ); return; }
|
|
}
|
|
|
|
$path = implode( '/', $q );
|
|
|
|
// 1. Legacy: class.ClassName.php
|
|
$f = $base . $path . '/class.' . $c . '.php';
|
|
if ( file_exists( $f ) ) { require_once( $f ); return; }
|
|
|
|
// 2. PSR-4: ClassName.php
|
|
$f = $base . $path . '/' . $c . '.php';
|
|
if ( file_exists( $f ) ) require_once( $f );
|
|
}
|
|
|
|
spl_autoload_register( '__autoload_my_classes' );
|