Заголовки
Новости еще не были созданы.
DevCraft Admin Panel

Модуль DevCraft Admin Panel 200.4.2

  • Проверка ключа лицензии: админка умеет спросить сервер, настоящий ли ключ, и получить ответ для окна платного плагина.

Добавлено​

  • Встроенный SDK для ядра DLE переехал в Admin: devcraft/src/sdk/dle/ (DcApi, DevCraft\Dle\Schema\*, DevCraft\Dle\Fluent\*, DevCraft\Dle\Xfield\*). Сателлитам больше не нужен установленный пакет DLE API — фасады доступны сразу после devcraft/init.php.
  • Мост равенств между TableQuery и QueryBuilder: toQueryBuilder() / fromQueryBuilder() переносят колонки, равенства, сортировку и limit/offset; LIKE, отрицание, RelationMap и доп. поля не переносятся.
  • PluginPresenter::export(?path, bool $archivate = false): снимок install.xml из plugins / plugins_files; при $archivate — ZIP DLE-совместимый (XML + filelist). Каталог по умолчанию: настройка Admin plugin_exports_path / Paths::pluginExports() (devcraft/cache/plugin_exports).
  • SDK Schema: MailCampaignsSchema / MailCampaignUsersSchema по DDL DLE 21 (mail_campaigns, mail_campaign_users); константы SchemaTableNames, связи в RelationMap, refs в TableRowUnion.
  • Канон сателлитов: публичный слой Controller/; патчи DLE через систему плагинов — маркеры // DevCraft {Name}: start / end.
  • Публичный dle_template: у [if] — опциональный [else]; новый блок [has value="…" condition="!=" comparison=""] с [else] — только при compile(..., true), патч engine/classes/templates.class.php (маркеры // DevCraft Admin) через install.xml.
  • Публичные ресурсы оболочки: зависимости между записями, список разделов показа и список исключений, отдельные страницы правки, справочник режимов страницы DLE ($do). Зависимости подтягиваются в оболочку даже если раздел не совпал; при удалении — отвязать ссылки или удалить зависимые ручные записи; при перетаскивании с нарушением порядка — предупреждение и исправленный порядок. В siteAssets те же поля задаются в js() / css() (dependsOn, available, notAvailable, active) и пишутся только если записи ещё нет в БД.

Изменено​

  • Namespace SDK переименован из DleApi\{Schema,Fluent,Xfield,Sdk} в DevCraft\Dle\.... Глобальный фасад DcApi и сигнатуры методов не изменились.
  • Поставка расширений условий шаблонов — в install.xml Admin (plugins_files), без отдельного DLE-плагина.
  • Собранные публичные CSS/JS хранятся отдельно для каждого раздела сайта; в оболочке зависимости идут раньше зависимых записей.

Устарело​

  • Старые имена DleApi\{Schema,Fluent,Xfield,Sdk}\* работают через автоматические алиасы классов; алиасы будут удалены в следующем мажоре — переводите код на DevCraft\Dle\*.

Исправлено​

  • Синхронизация таблиц Cycle: индекс kind + local_path у dc_public_assets на utf8mb4 превышал лимит ключа MySQL (3072 байта). Индекс по длинному пути убран.
  • Cycle ORM: при пересборке схемы (нет или устарел cycle_orm_schema.ser) всегда включается GenerateMigrations — таблицы сателлитов (в т.ч. api_*) создаются после установки ядра Admin, а не только при первом bootstrap.
  • SDK: create() любой Schema падал с «Table PREFIX_PREFIX_* doesn't exist» — INSERT шёл через builder Cycle, у которого префикс уже настроен. Теперь префикс не удваивается.
  • SDK: пользовательские таблицы DLE (admin_logs, banned, twofactor, conversations*, social_login, ignore_list, downloads_log, lostdb, mail_log) читались и писались с PREFIX вместо USERPREFIX. На сайтах с разными префиксами это указывало на несуществующие таблицы.
  • SDK Schema типы по install/dump DLE 21: category.schema_org и storage.name / vote.date — string; rss.category — int.
  • Генератор модулей: latin/toTranslit сохраняет _ и -; Identity MODULE=%dir%, CODE=%latin%; каталог модуля — PascalCase от имени; engine/inc — slug без префикса dle_.
  • Собранные публичные CSS/JS: в cache/public_assets/ пишется .htaccess с доступом — иначе родительский devcraft/.htaccess отдаёт 403 на bundle.css / bundle.js.
  • Подстановка файлов из siteAssets описания модуля: если файлов в описании больше нет (или список пуст), старые автозаписи модуля выключаются — на сайт не попадает лишний админский JS.
  • Подстановка из siteAssets больше не включает снова автозаписи, которые выключили вручную в админке.
  • DevCraft.copyText в ядре (devcraft.js): копирование в буфер на всех страницах админки, в т.ч. по HTTP (запасной execCommand).
  • Публичные стили/скрипты/заголовки: переключатель «Активен» брал id с обёртки Metro Switch (класс уехал с checkbox, data-id остался на input) — «Запись не найдена» и два запроса/уведомления. Id берётся из строки таблицы; повторный сигнал change сливается в один запрос.
  • Публичные списки: таблица Metro пересобирала строки (терялся data-id, ломалось перетаскивание) и искала колонки не по тем именам (поиск ничего не находил). Теперь штатная полоса фильтра и обычная таблица; перетаскивание по живым строкам, при фильтре порядок не пишется.
  • Режим отладки: замер времени AJAX (pipeline_ms) больше не попадает в таблицу журнала отдельной строкой из одних чисел. Для ответа-таблицы (список строк) замер пишется рядом с data, не внутрь списка.
  • Общая форма настроек: после сохранения поля соседнего модуля ({code}__поле) снова читаются из его файла. Раньше запись шла в devcraft/config/{code}.json, а экран брал только файл основного модуля — переключатель вроде «Включить доставку» выглядел несохранённым.
  • Страница соседнего модуля (action=push и подобные) больше не показывает всю форму основного модуля. На экране только поля этого модуля; общая форма по-прежнему на action=settings.

Основные изменения​

  • Ребрендинг: MHAdmin → DevCraft с новым разделом админки (?mod=devcraft)
  • Добавлена поддержка DataLife Engine 20.0
  • Миграция UI-фреймворка: Semantic UI / Fomantic UI заменен на Metro UI для форм, тогглов, календарей и таблиц
  • Очистка зависимостей: Выпилены тяжелые UI-зависимости (Fomantic, jquery-confirm, bootstrap-suggest) в пользу унифицированной библиотеки Metro UI
  • Файловая структура: Файлы плагина перенесены из директории engine/inc/maharder/ в devcraft/
  • Улучшения дашборда: Расширен функционал сервиса пакетов — добавлены отдельные методы для недостающих пакетов и фильтрации по коду приложения/плагина
  • Экспорт БД: Добавлен AJAX-хендлер для экспорта выбранных таблиц базы данных в SQL
  • Теги шаблона новостей: Новый модуль для процессинга тегов в шаблоне новостей с саппортом метаданных
  • Очистка манифеста: Из конфига удалена информация об авторе и неиспользуемые линки на лицензии
  • Минорные фиксы: Добавлена условная логика Metro UI для textarea, обновлены шаблоны issue на GitHub, пофикшены опечатки

Вложения

  • 2026-07-19 19.44.17 dle200.test e07d01abde65.webp
    2026-07-19 19.44.17 dle200.test e07d01abde65.webp
    50.8 KB · Просмотры: 0
  • 2026-07-19 19.44.10 dle200.test 70a94ba951c0.webp
    2026-07-19 19.44.10 dle200.test 70a94ba951c0.webp
    103.7 KB · Просмотры: 0
  • 2026-07-19 19.44.04 dle200.test 6e7e17531ecd.webp
    2026-07-19 19.44.04 dle200.test 6e7e17531ecd.webp
    73.9 KB · Просмотры: 0
  • 2026-07-19 19.43.44 dle200.test 162ca9c6007a.webp
    2026-07-19 19.43.44 dle200.test 162ca9c6007a.webp
    73.5 KB · Просмотры: 0
  • 2026-07-19 19.43.34 dle200.test 8b7890dad75f.webp
    2026-07-19 19.43.34 dle200.test 8b7890dad75f.webp
    85.6 KB · Просмотры: 0
  • 2026-07-19 19.43.27 dle200.test be6f4ea93e19.webp
    2026-07-19 19.43.27 dle200.test be6f4ea93e19.webp
    53.6 KB · Просмотры: 0
  • 2026-07-19 19.43.19 dle200.test e854644bdfc5.webp
    2026-07-19 19.43.19 dle200.test e854644bdfc5.webp
    52.2 KB · Просмотры: 0
Исправлена обработка композера на виндовс
  • [NEW] Добавлен метод сохранения конфигурации плагина, saveConfig в классе DataManager
  • [FIX] Исправлена функция joinPaths для корректной обработки путей, особенно в средах Windows
  • [FIX] Исправлены проблемы с переменными при генерации новых модулей.
  • Обновлен номер версии
    Обновлена версия модуля в manifest.json и maharder.php.
  • Переназначение старых стилей и скриптов
    В Admin.php заменены устаревшие ссылки на стили и скрипты на tinymce.min.js и typograf.min.js.
  • Новые методы в TwigFilter.php
    Добавлены методы создания фильтров диапазона (createRangeFilter()) и диапазона даты (createDateRangeFilter()) в TwigFilter.php.
  • Дополнения в BasisModel.php
    В BasisModel.php добавлены поля creator и lastEditor и связанные с ними методы.
  • Новый метод createOrUpdate()
    Добавлен новый метод createOrUpdate() в MhDB.php для обработки создания или обновления сущностей.
  • Изменение в AjaxAbstractResponse.php
    В AjaxAbstractResponse.php изменена обработка ответа, позволяя устанавливать данные и метаданные как массив или строку.
  • Фиксация успешного флага
    Исправлен флаг успеха в ErrorResponseAjax.php на false для указания на неудачу.
  • Новая функция getFullUserGroups()
    В DleData.php добавлен новый метод getFullUserGroups() для получения пользовательских групп, отсортированных по имени.
  • Очистка кода и комментариев
    Проведена работа над форматом кода и комментариев для лучшей читаемости и последовательности.
  • Добавлены новые методы в AdminUrlExtension.php
    Включают методы получения информации о пользователе (getUserInfo, getUserGroupInfo, и getCurrentUser).
  • Документация для методов
    Обновление существующих методов для включения комментариев к документации с подробным описанием их функциональности.
  • Упрощение формирования URL
    Упрощен методы getAssetsUrl и getModulesUrl для формирования URL.
  • Метод getSiteUrl
    Добавлен метод getSiteUrl для генерации URL.
  • Логирование для версии 173.3.4
    Добавлено логирование для версии 173.3.4 в changelog.php.
  • Изменение обработки хлебных крошек
    В logs.php изменена работа с хлебными крошками для более кратких заголовков страниц.
  • Рефакторинг index.php
    index.php переработана путем устранения устаревших проверок, связанных с Composer и изменением флага отладки на true.
  • Расширение функциональности фильтра
    Расширена функциональность фильтра в filter.twig.
  • Новые макросы в input.twig
    Добавлены новые макросы в input.twig для улучшения обработки шаблоны.
  • Добавление meta.twig
    Реализовано отображение метаданных пользователя для сущностей с помощью нового файла meta.twig.
  • Улучшение форматирования base.html
    Форматирование и отступы в base.html улучшены для легкости чтения.
  • Добавлены переменные в base.html
    Добавлены переменные lang_iso и cache_id для идентификации языка и кэша.
  • Модификация addInput.html
    В addInput.html добавлено двоеточие к placeholder для более ясного приглашения к вводу.
  • Рефакторинг addTextarea.html
    В addTextarea.html упрощена установка текстового редактора путем замены инициализации на вызов initTinyMce.
  • [FIX] Исправлена работа с composer
  • [FIX] Исправлена проблема цикличности в классе переводов
[FIX] По неопределённой причине закинул старую версию поверх новой при мёрдже
  • Исправление ошибок при выводе данных
  • Исправление ошибок при загрузке ассетов
Обновление!
ДАННАЯ ВЕРСИЯ НЕ СОВМЕСТИМА С ПРЕДЫДУЩИМИ! УДАЛИТЕ ПРЕДЫДУЩУЮ ВЕРСИЮ! (за исключением конфигураций)

  • [NEW] Добавлена мультиязычная поддержка, перевод можно осуществить при помощи сервиса Crowdin. Ссылка в подвале каждого модуля.
  • [NEW] Добавлена возможность выводов логов на отдельной странице.
  • [NEW] Добавлено моделирование таблиц в базе данных при помощи Cycle ORM. Это поможет в дальнейшем создавать модули с более сложной структурой и работу с данными.
  • [NEW] Все изменения в таблицах будут храниться в отдельной таблице "migrations" и в папке "_migrations". Это позволит легко сделать откат изменений.
  • [NEW] Добавлена возможность сортировать и фильтровать данные таблиц на страницах административной панели (где такие есть, пример: Логи).
  • [NEW] Добавлена возможность проверять на обновление плагина на сайте devcraft.club. Используется гостевой ключ.
  • [UPDATE] Минимальная версия PHP 8.3
  • [UPDATE] Функционал обновлён до версий DLE 17.3
  • [UPDATE][BETA] Установщик упрощён. Теперь зависимости загружаются и устанавливаются при первом открытии [любого] модуля. Может занять несколько минут. Теперь установщик весит мало.
  • [UPDATE] Откат функций, которые использовали класс DLEFiles. Он не работает со сторонними разработками как надо. Либо работает, но документации к нему то нет.
  • [UPDATE] Изменена структура файлов админпанели. Теперь все файлы модуля находятся в папке "_modules", a шаблоны в папке "_templates".
  • [DELETE] Удалены устаревшие и ненужные методы логирования.
  • [DELETE] Удалена замена иконок в админпанели DLE.
Назад
Сверху