Журнал изменений

Журнал изменений

Фильтр и поиск

Всего: 1173 Доступных коммитов | Отфильтровано: 1173 Коммиты | Страница: 57 из 118
17.04.2026
Refactor: modules — migrate fragment API calls to consolidated fragments
Автор: Eduard Laas | Дата: 11:50 17.04.2026

Replace per-purpose fragment names with generic consolidated fragments across all 21 modules, consistent with the new flat fragment API introduced in the core layer.

Core changes:

  1. hit-badge → inline-badge (modules/auto_links, files, links, media, news, recommend, rss, search, shop, users, whois):
  2. Added is_hits, is_download flags for CSS class variants
  3. Renamed title → title_text, text → label
  4. form-option → select-option (modules/account, contact, faq, files, help, jokes, links, money, news, pages, rss, search, shop, users):
  5. Renamed value → value_attr, label → label_text, selected → is_selected (bool)
  6. action-link → link (modules/clients, content, files, forum, links, media, money, pages, search, shop, users):
  7. Added is_button_blue, is_comment, is_read flags for CSS class variants
  8. Misc fragment renames per module:
  9. clients-list-basic/open → table open/close with cells array
  10. users-stats/top/rules basic/open → table open/close with cells array
  11. shop-order/partner/client rows/tables → table open/close with cells array
  12. navi-lower fragment → navi-lower partial (getHtmlPart)
  13. auto-links-code-table → code-table
  14. reads-badge → inline-badge with is_download flag
  15. media-link-item → link with is_media_ed2k/is_media_http flags
  16. back-button → span with is_back flag
  17. category-image → link with is_card_image flag

Benefits:

  • Completes fragment consolidation across all PHP layers
  • Single source of truth per HTML pattern (link, span, table, etc.)
  • Boolean flags replace per-purpose fragment files

Technical notes:

  • No behavior change; output HTML is functionally identical
  • navi-lower moved from getHtmlFrag to getHtmlPart (partials directory)
Refactor: core — migrate fragment API calls to consolidated fragments
Автор: Eduard Laas | Дата: 11:50 17.04.2026

Replace per-purpose fragment names with generic consolidated fragments (select, input, link, span, table-row, table, post-div, meta-value) to match the new flat fragment API where each fragment handles multiple variants via boolean flags.

Core changes:

  1. Fragment renames (core/helpers.php):
  2. refresh-select-time → select (name_attr, options_html)
  3. multi-select → select (added is_multiple, is_name_array flags)
  4. user-search → input (added is_user_search, endpoint_attr flags)
  5. Fragment renames (core/system.php):
  6. span with class → span (is_highlight, is_geo_flag flags)
  7. navi-tab-content → post-div
  8. geo-ip-flag → span (is_geo_flag flag)
  9. comment-num-link → link (is_num_anchor flag)
  10. comment-meta-color → meta-value
  11. comment-text → post-div
  12. shop-cart-table open/close pattern consolidated into single call
  13. Fragment renames (core/user.php):
  14. account-mail-link → link (label_html, is_blank flags)
  15. account-user-button → link (is_account_button, is_blank flags)
  16. account-pm-list-row → table-row (cells array)
  17. account-pm-list-table → table open/close pattern
  18. account-favorites-row → table-row (cells array)
  19. account-favorites-table → table open/close pattern
  20. comment-meta-color → meta-value
  21. form-option → select-option (value_attr, label_text, is_selected)

Benefits:

  • Reduces fragment count from ~80 to ~30 consolidated fragments
  • All rendering variants controlled by boolean flags in PHP
  • Consistent API across all call sites

Technical notes:

  • No behavior change; output HTML is functionally identical
  • table open/close pattern: getHtmlFrag('table', ['open'=>true,...]) ... getHtmlFrag('table', [])
Refactor: templates — перенести page-level фрагменты в partials; добавить новые фрагменты
Автор: Eduard Laas | Дата: 00:21 17.04.2026

Реструктуризация шаблонов: крупные фрагменты (form-add, view, liste) вынесены из fragments/ в partials/. Добавлены новые фрагменты для head-ссылок, скриптов, сессий и превью изображений.

Core changes:

  1. Удалены fragments (default, lite, simple):
  2. form-add.html, media-form-add.html → partials/form-add.html
  3. view.html → partials/view.html
  4. table-row-liste.html → inline в table-row.html (единый фрагмент)
  5. whois-add-form.html, whois-status.html → инлайн в модуле
  6. account-privat-tab-pane.html → заменён post-div фрагментом
  7. Новые fragments (default, lite, simple):
  8. head-link.html, head-script-src.html, head-script-inline.html
  9. image-preview.html, session-row.html, session-summary.html
  10. action-delete.html, action-menu-item.html
  11. editor-action-insert.html, editor-action-menu.html
  12. forum-reply-form.html, forum-topic-icon.html
  13. Новые fragments (admin):
  14. img-preview.html, editor-action-insert.html, span-raw.html
  15. Обновлённые fragments:
  16. table-row.html: объединяет старый table-row-liste в единый условный шаблон
  17. alert.html: поддержка messages-массива вместо text-строки
  18. media-link-row.html: переход с table-разметки на div.sl-form-row
  19. textarea.html: добавлен placeholder_text
  20. partials/preview-content.html: title_html → title_text (безопасный вывод)
  21. category-row.html: обновлены переменные разметки
  22. CSS (new.css, все темы):
  23. Добавлены стили для session-table, image-preview-toggle, image-preview-mini

Benefits:

  • Чёткое разграничение: fragments — атомарные UI-элементы, partials — страничные блоки
  • Новые фрагменты устраняют inline-HTML в PHP-коде
  • preview-content.html не допускает XSS через title ({{ вместо {{{)

Technical notes:

  • Новые partials/view.html, form-add.html, liste.html добавлены во все темы
  • table-row.html обратно совместим через условие cells_html
Refactor: admin, blocks, plugins — мигрировать HTML-рендер на $tpl->getHtmlFrag()
Автор: Eduard Laas | Дата: 00:20 17.04.2026

Компоненты вне core/ и modules/ переведены с устаревших хелперов на прямые вызовы $tpl->getHtmlFrag(). Устранены зависимости от удалённых функций getTplImageSelect, getTplCategoryPreview, getMailLink и др.

Core changes:

  1. admin/modules/categories.php:
  2. Локальная функция getAdminCategoryImageSelect() заменяет getTplImageSelect()
  3. getTplCategoryPreview() → getHtmlFrag('img-preview', ...)
  4. admin/modules/admins.php:
  5. getMailLink() → getHtmlFrag('link', ['href' => 'mailto:...'])
  6. alert messages передаётся как массив через 'messages'
  7. admin/modules/config.php, monitor.php, referers.php:
  8. getTplExternalAction() → getHtmlFrag('comment-action-link', ...)
  9. getTplSpan() → getHtmlFrag('span-raw', ...)
  10. setPageNumbers() → getPageNumbers()
  11. blocks/block-login.php, block-user_info.php:
  12. getTplTextInput / getTplHiddenInput → прямые getHtmlFrag-вызовы
  13. plugins/editors/*:
  14. getHtmlScriptSrc / getHtmlCssLink → head-script-src / head-link фрагменты
  15. config/local.php:
  16. Обновлён base_fingerprint

Benefits:

  • Все PHP-компоненты проекта унифицированы на одном механизме рендера
  • Удалены последние явные зависимости от helpers-old.php

Technical notes:

  • getAdminCategoryImageSelect() определена локально в categories.php
  • fingerprint обновлён после реструктуризации шаблонов
Refactor: modules — мигрировать вызовы хелперов на $tpl->getHtmlFrag()
Автор: Eduard Laas | Дата: 00:20 17.04.2026

Все фронтенд-модули переведены с устаревших обёрток (getTplMetaRefresh, getTplGenderSelect, getTplSelectOption, getTplRadioForm, getTplFieldsOut и др.) на прямые вызовы $tpl->getHtmlFrag() с явными именами фрагментов.

Core changes:

  1. account (modules/account/index.php, admin/index.php):
  2. getTplMetaRefresh() → getHtmlFrag('meta-refresh', ...)
  3. getTplGenderSelect() → getHtmlFrag('select', ...) с inline-опциями
  4. getTplRadioForm() → getTplRadioGroup() с явными опциями
  5. account-privat-tab-pane → post-div
  6. alert 'text' → 'messages' для массивов ошибок
  7. forum (modules/forum/index.php):
  8. getTplForumIcon / getTplForumReplyForm → прямые getHtmlFrag-вызовы
  9. Пагинация и фрагменты обновлены
  10. media, links, files, help, faq, pages (modules/*/index.php):
  11. Замена getTplSearchResultTitle, getTplMoneyCalcForm, getTplViewFieldRows
  12. Миграция form/view/liste на новые partials
  13. news, search, shop, whois, users, voting и другие модули:
  14. getStopText() заменён передачей массива messages напрямую
  15. Все getHtmlFrag-вызовы унифицированы

Benefits:

  • Устранены десятки тонких обёрток, код модулей стал однообразным
  • alert-фрагмент получает messages-массив вместо pre-joined строки
  • Удалены зависимости от helpers-old.php во всех модулях

Technical notes:

  • getTplFieldsOut() переименован в getTplViewFieldRows() (уже в предыдущем commit)
  • setPageNumbers() вызывается как getPageNumbers() там где применимо
Refactor: core — удалить helpers-old.php; мигрировать HTML-рендер на $tpl->getHtmlFrag()
Автор: Eduard Laas | Дата: 00:20 17.04.2026

Удалён устаревший helpers-old.php со старыми обёртками. Все вызовы getHtmlScriptSrc(), getHtmlHeadLink(), getTplHiddenInput() и прочих функций-обёрток заменены на прямые вызовы $tpl->getHtmlFrag().

Core changes:

  1. helpers-old.php (core/helpers-old.php):
  2. Файл удалён полностью

    • Все функции перенесены или заменены inline-вызовами $tpl->getHtmlFrag()
  3. helpers.php (core/helpers.php):
  4. Удалены мёртвые обёртки: getTplRefreshTimeSelect(), getTplMoneyCalcForm(), getTplSearchResultTitle()
  5. getTplAddDateTime() и getTplBbEditor() мигрированы на getHtmlFrag('hidden', ...)
  6. getTplPreviewContent() передаёт title_text вместо title_html
  7. getTplFieldsIn() инлайнит input-рендер напрямую
  8. system.php (core/system.php):
  9. getHtmlScriptSrc/Inline/CssLink заменены на head-script-src/head-script-inline/head-link фрагменты
  10. filterTextHighlight() использует span/span-raw фрагменты через preg_replace_callback
  11. getNaviTabs() инлайнит рендер через navi-tab-link/content/wrap фрагменты
  12. access.php / security.php (core/):
  13. getTplFragmentName('head-link-css') заменён на прямой вызов head-link фрагмента
  14. favicon и CSS-ссылки рендерятся через head-link фрагмент
  15. user.php (core/user.php):
  16. getTplHiddenInput / getTplTextInput заменены на getHtmlFrag('hidden'/'input')
  17. getPrivateMessageView() принимает string|array $stop

Benefits:

  • Устранён слой обёрток-посредников, снижена цикломатическая сложность
  • Рендер HTML унифицирован через единственный механизм $tpl->getHtmlFrag()
  • Удалён мёртвый файл helpers-old.php

Technical notes:

  • getTplFragmentName() больше не нужна, вызовы заменены литеральными именами
  • preg_replace заменён на preg_replace_callback для доступа к $tpl в замыкании
16.04.2026
Refactor: templates/frontend — перенести new/ фрагменты в корень; добавить новые; удалить замененные
Автор: Eduard Laas | Дата: 18:25 16.04.2026

Финальный шаг консолидации: все frontend-фрагменты приведены к структуре templates/{default,lite,simple}/fragments/*.html без поддиректорий. new/ поддиректория удалена. Добавлены фрагменты для форм, рейтинга, навигации, аккаунта и личных сообщений. Устаревшие дубликаты удалены.

Core changes:

  1. Renamed from new/ to root (per theme: default, lite, simple):
  2. assoc-item, card, code-block, code-hljs, code-row, code-table, form-add, form-field-row, graphic, grid, hidden, input, msg-center, pager, related, related-item, select, shop-basic, shop-cart-item-row, shop-cart-table, span, table, table-row, table-row-content, table-row-liste, textarea, tip, view, view-field, voting-widget

  3. New fragments added (per theme):
  4. category-icon, category-title (icon/title with optional link)
  5. edit-tip, editor-file-row (editor UI helpers)
  6. inline-badge, link (generic UI elements)
  7. radio, radio-group (form radio controls)
  8. rating-bar-live (HTMX 5-star voting)
  9. title-tip-item (sub-item for title-tip pre-render)
  10. Modified fragments:
  11. assoc-wrap, checkbox-input, forum-view-change: contract updates
  12. breadcrumb-link: removed (merged into link contract)
  13. CSS new.css: add .sl-radio-group flex layout
  14. Deleted old root fragments (replaced by contracts above):
  15. login, login-logged, login-without (→ login/login-* contracts in system.php)
  16. comment, comment-action-ajax/link, comment-avatar, comment-bulk-actions, comment-date, comment-list-form, comment-meta-color, comment-num-link, comment-rank-image, comment-signature, comment-text

  17. account-comment-section/form, account-message-admin-note, account-nav, account-nav-item, account-pm-icon-link, account-pm-list-row, account-pm-list-table, account-privat-message-form, account-user-button

  18. account-favorite-add/off/on, account-favorites-row/table
  19. messagebox, privat-message
  20. alpha-nav-link, alpha-nav-text, navi-tab-link, navi-tab-content, navi-tabs-wrap
  21. categories, category-row, category-select, category-sub-item
  22. rating-like, rating-like-live, rating-bar, rating-wrap, file-input
  23. kasse-basic, kasse-wrap, meta-refresh
  24. Various block-, action-, basic-* legacy fragments no longer referenced

Benefits:

  • Fragment namespace flat and consistent: no subdirectory lookup
  • ~130+ obsolete fragments removed per theme
  • PHP helpers/modules resolve fragments without path manipulation

Technical notes:

  • templates/*/fragments/new/ directories fully removed
  • All login, comment, account, PM, rating, form fragments now at root
  • sl-radio-group CSS added to all three theme new.css files
Refactor: core — мигрировать fragment-вызовы на корневые имена
Автор: Eduard Laas | Дата: 18:24 16.04.2026

helpers.php, helpers-old.php и system.php переключены с new/-префикса на прямые корневые имена фрагментов. getTplTitleTip переписан: каждый item рендерится отдельным вызовом getHtmlFrag('title-tip-item'), результат передаётся в title-tip как content, так как for-циклы шаблона не поддерживают sub-ключи вложенных объектов.

Core changes:

  1. core/helpers.php:
  2. getTplTitleTip: pre-render items via title-tip-item; pass content string to title-tip
  3. All getHtmlFrag('new/...') calls renamed to direct fragment names: radio-option, radio, radio-group, file-input, alpha-nav-link, alpha-nav-text, navi-tab-link, navi-tab-content, navi-tabs-wrap, category-icon, category-title, category-sub-item, category-row, category-select, rating-like-live, rating-like, rating-bar-live, rating-bar, rating-wrap

  4. core/helpers-old.php:
  5. setPageNumbers: key rename pager→items, page→limit; fragment pager (no new/)
  6. getTplAjaxAction: comment-action-ajax (no new/)
  7. Comment action links: comment-action-link (no new/)
  8. core/system.php:
  9. getAsyncPager: key rename pager→items, page→limit; fragment pager (no new/)
  10. Login fragments: login-logged, login, login-without (no new/)
  11. Comment fragments: comment-date, comment-num-link, comment-text, comment, comment-list-form (no new/)

  12. Categories: categories (no new/)

Benefits:

  • Fragment resolution unified: all calls use root-level names in all themes
  • getTplTitleTip contract explicit: no hidden for-loop dependency on sub-keys

Technical notes:

  • pager fragment data keys changed: pager→items, page→limit (breaking if caller uses old keys)
  • title-tip-item fragment required alongside title-tip
Refactor: modules — мигрировать все frontend-модули на Etalon-стандарт
Автор: Eduard Laas | Дата: 18:24 16.04.2026

Все 24 frontend-модуля переведены на единый Etalon-стандарт рендеринга: замена HTML-строк в PHP на getHtmlFrag-вызовы с корневыми фрагментами, удаление inline-HTML из PHP, использование общих контрактов (view, table, card, form-add, grid, alert, pager).

Core changes:

  1. Content modules (auto_links, changelog, contact, content, faq, files, help, jokes, links, main, media, money, recommend, rss, search, sitemap):
  2. Replace inline HTML with getHtmlFrag calls (view, table, card, alert, pager)
  3. Remove raw string concatenation for list rows
  4. Use table-row-liste, table-row-content contracts
  5. Complex modules (account, forum, shop):
  6. account: migrate to account-* fragment contracts; remove inline tab HTML
  7. forum: replace open form/table HTML with fragment contracts
  8. shop: migrate cart, product, order views to shop-basic, shop-cart-* fragments
  9. Utility modules (clients, news, order, pages, users, voting, whois):
  10. news: align with table/pager/view contract
  11. voting: migrate vote form to fragment-based render
  12. whois: replace inline HTML output with view/card fragments

Benefits:

  • Zero inline HTML remaining in frontend module render paths
  • All modules share the same fragment contract surface (view, table, card, alert)
  • Simplified future migration: contract changes propagate to all modules at once

Technical notes:

  • modules/news/index.php and modules/pages/index.php share identical Etalon pattern
  • shop cart/order fragments (shop-basic, shop-cart-*) are theme-independent
  • No DB schema or URL changes
Refactor: plugins — убрать new/ префикс в фрагментах; переименовать toggle-функцию
Автор: Eduard Laas | Дата: 18:23 16.04.2026

Все плагины редакторов обновлены: getHtmlFrag('new/hidden', ...), getHtmlFrag('new/textarea', ...) заменены на корневые имена без префикса. В slaed.js функция initCloseOpenBlocks переименована в initToggleBlocks для ясности назначения.

Core changes:

  1. Editor plugins (plugins/editors/*/driver.php):
  2. ckeditor: new/hidden → hidden
  3. codemirror: new/textarea → textarea
  4. plain: new/textarea → textarea
  5. tinymce: new/textarea → textarea
  6. toastui: new/textarea → textarea (see driver.php)
  7. System JS (plugins/system/slaed.js):
  8. Rename initCloseOpenBlocks() to initToggleBlocks() for clarity

Benefits:

  • Fragment calls consistent with root-level architecture across all plugin drivers
  • Function name reflects actual toggle behaviour, not directional close/open

Technical notes:

  • No functional change to JS toggle logic; rename only

Страница 57 из 118. Всего: 1173

1 52 53 54 55 56 57 58 59 60 61 118
Хотите опробовать SLAED CMS в действии?
Идеи и предложения
Обратная связь
Подтверждение

Поделиться
QR-код

Предварительный просмотр