Содержание классов для разработки в Back-End¶
Константы DEVCRAFT_*¶
Регистрируются в Paths::register() (devcraft/src/classes/Config/Paths.php):
DEVCRAFT_ROOT¶
Корень каталога плагина: ROOT_DIR . '/devcraft'.
DEVCRAFT_SRC¶
Исходный код: DEVCRAFT_ROOT . '/src'.
DEVCRAFT_TEMPLATES¶
Twig-шаблоны: DEVCRAFT_SRC . '/templates'.
DEVCRAFT_LOCALES¶
Файлы локализации: DEVCRAFT_ROOT . '/locales'.
DEVCRAFT_CONFIG¶
Конфигурация JSON: DEVCRAFT_ROOT . '/config'.
DEVCRAFT_MODULES¶
Модули: DEVCRAFT_SRC . '/modules'.
DEVCRAFT_CLASSES¶
Классы ядра: DEVCRAFT_SRC . '/classes'.
DEVCRAFT_LOGS¶
Журналы: DEVCRAFT_ROOT . '/logs'.
DEVCRAFT_CACHE¶
Файловый кеш: DEVCRAFT_ROOT . '/cache'.
Дополнительно при bootstrap определяется DEVCRAFT_BOOTSTRAPPED в devcraft/init.php.
Глобальные функции¶
Файл: devcraft/src/bootstrap/functions.php.
__¶
Синоним translate() для краткой записи переводимых строк в PHP и схемах форм.
translate¶
Переводит фразу через Translation с поддержкой параметров и множественного числа.
dirToArray¶
Строит дерево каталога; делегирует DataManager::dirToArray().
br2nl¶
Заменяет HTML-теги <br> на разделитель строк.
Классы, интерфейсы и перечисления¶
| Название | Краткое содержание |
|---|---|
| AjaxHandlerInterface | Контракт обработчика AJAX-запроса модуля DevCraft. |
| FilterableRepositoryInterface | Контракт репозитория с метаданными для построения фильтров админки. |
| PageInterface | Контракт обработчика административной страницы модуля. |
| ResponseInterface | Контракт HTTP-ответа, отправляемого клиенту. |
| SettingsPageInterface | Контракт страницы настроек модуля с дополнительными данными формы. |
| AbstractEntity | Базовая ORM-сущность с аудитом создания и изменения записи. |
| AbstractPage | Базовый класс административной страницы с доступом к Twig и контексту админки. |
| AbstractRepository | Базовый Cycle ORM-репозиторий с фильтрацией, пагинацией и метаданными колонок. |
| AbstractType | Базовый тип данных с сериализацией в массив и обратно. |
| AdminContext | Контекст административной панели для текущего запроса модуля. |
| AdminErrorRenderer | Рендерит страницы ошибок админки через Twig. |
| AdminLink | Элемент навигационного меню административной панели. |
| AdminLinkResolver | Разрешает действия и классы страниц по дереву пунктов меню. |
| AjaxController | Диспетчер AJAX-запросов DevCraft. |
| AjaxRequest | DTO входящего AJAX-запроса DevCraft. |
| AjaxRouteRegistry | Реестр AJAX-маршрутов controller/method → обработчик. |
| Application | Главный контейнер приложения DevCraft (Singleton). |
| AssetsCheckerService | Сканирует и синхронизирует публичные ассеты с удалённым манифестом. |
| Author | Данные автора модуля для блока информации в админке. |
| BreadCrumb | Элемент навигационной цепочки «хлебных крошек». |
| CacheControl | Файловый кэш DevCraft. |
| Changelog | Запись версии в журнале изменений модуля. |
| ChangelogChange | Одна запись изменения в журнале версий. |
| ChangelogPage | Страница истории изменений модуля DevCraft Admin. |
| CheckAssetsHandler | AJAX: сравнение локальных и удалённых ресурсов. |
| CheckUpdateHandler | AJAX: проверка обновлений на devcraft.club. |
| ContextLogger | Контекстный логгер с привязкой к модулю. |
| DashboardPage | Главная страница модуля DevCraft Admin. |
| DataLoaderService | Загрузка данных DLE с кешированием. |
| DataManager | Файлы, JSON-конфигурация, санитизация ввода DLE. |
| DatabaseGateway | Шлюз Cycle ORM. |
| DeleteLogHandler | AJAX: удаление записи журнала. |
| DevCraftConfig | Доступ к настройкам плагина с учётом схемы. |
| DevCraftException | Базовое исключение DevCraft. |
| DleDataService | Справочные данные DLE (пользователи, категории, xfields). |
| DleMenuBuilder | Меню «Страницы DLE». |
| EntityPathResolver | Пути к моделям и миграциям. |
| EnvironmentFactory | Фабрика Twig Environment. |
| FilterFormService | Фильтрация списковых страниц админки. |
| FilterSchema | Декларативная схема фильтра. |
| FormField | Описание поля формы. |
| FormFieldBuilder | Fluent-строитель поля формы. |
| FormSchema | Полная схема формы. |
| FormSchemaBuilder | Fluent-строитель схемы формы. |
| FormSection | Секция формы. |
| FormSectionBuilder | Fluent-строитель секции. |
| JsonResponse | JSON-ответ AJAX. |
| FileResponse | HTTP-ответ со скачиванием файла. |
| UploadedFile | Обёртка $_FILES для multipart-загрузок. |
| LanguageData | Метаданные языка локализации. |
| LogGenerator | Генератор логов: файлы, Telegram, БД. |
| LogRecord | Сущность записи журнала DevCraft в таблице devcraft_logs. |
| LogRecordRepository | Репозиторий devcraft_logs. |
| LogMessagePresenter | Представление сообщения журнала для readonly-view. |
| LogsPage | Страница журнала событий и детальный просмотр по UUID. |
| LogsTableHandler | AJAX: таблица журнала. |
| MenuComposer | Объединение меню DLE и manifest. |
| ModuleData | Метаданные зарегистрированного модуля. |
| ModuleGeneratorInput | DTO формы генератора модулей. |
| ModuleGeneratorService | Генерация каркаса нового модуля. |
| NewModuleHandler | AJAX: генерация модуля. |
| NewModulePage | Страница генератора модулей. |
| PageOrchestrator | Переменные Twig для настроек и changelog. |
| ParseTemplateTags | Парсинг тегов шаблонов новости DLE для модулей. |
| Paths | Пути и URL DevCraft. |
| PluginContext | Контекст модуля после загрузки manifest. |
| Registry | Реестр модулей DevCraft. |
| Router | Маршрутизатор админ-запросов. |
| SaveAssetHandler | AJAX: загрузка одного ресурса. |
| SettingsFormService | View-model формы настроек. |
| SettingsHandler | AJAX: сохранение настроек. |
| SettingsPage | Страница настроек. |
| SyncAssetsHandler | AJAX: массовая синхронизация ресурсов. |
| Translation | Фасад локализации (XLIFF, Symfony). |
| TwigTranslatorBridge | Мост Symfony Translation для Twig. |
| AdminErrorKind | Классификация ошибок админки. |
| ChangelogChangeType | Тип записи changelog. |
| FormLayout | Раскладка формы (вкладки и т.д.). |
Composer Core¶
| Название | Краткое содержание |
|---|---|
| composer_packages.md | Manifest, sync json/lock, пример AJAX-модуля. |
| ComposerActionResult | DTO результата Composer. |
| ComposerRuntimeAdapter | CLI Composer из админки. |
| ComposerStateReader | Чтение composer.lock. |
| ManifestPackageReader | Агрегация composer_required. |
| ComposerDbSyncService | Sync с devcraft_composer_data. |
| PackagePolicyService | Политики install/update/remove. |
| DefaultPackagePolicyStore | JSON-хранилище политик. |
| ComposerData | ORM-сущность пакета. |