Перейти к содержанию

Содержание классов для разработки в 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-сущность пакета.