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

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

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

Всего: 1173 Доступных коммитов | Отфильтровано: 1173 Коммиты | Страница: 55 из 118
20.04.2026
Refactor: templates — update existing fragments and partials to new contracts
Автор: Eduard Laas | Дата: 15:21 20.04.2026

Extend generic fragments to support new boolean flags and rendering variants required by the PHP caller migration. Update partials to use fragment includes instead of inline HTML, completing the transition to a fully data-driven template layer. Applied uniformly to default, lite, and simple themes; plus templates/lite/index.php.

Core changes:

  1. link.html: add onclick_attr pass-through for arbitrary onclick without is_delete; is_cart_checkout added to class chain

  2. list.html: add is_unordered flag to render <ul> instead of <ol>
  3. post-div.html: add has_hr flag to render <hr> after the closing </div>
  4. span.html: add is_line_break flag (appends <br>); add content_html slot for raw HTML content alongside existing text slot; is_danger class added to chain

  5. title.html: add title_class parameter to override sl-title on h3; add title_html slot for raw HTML in h2/h3/h4 variants; add is_level_four / h4 rendering variant

  6. checkbox.html: add is_plain flag for plain label-only layout (used in voting polls)
  7. radio.html: updated data binding for inline voting list rendering
  8. form-submit.html: align class/input_attr parameters for form-submit callers
  9. form-field-row.html: minor slot/attribute alignment
  10. date-badge.html: add class parameter for custom date badge styling
  11. login-nav.html: convert inline HTML elements to fragment includes:
- input/password fields → {% include 'fragments/input.html' with ... %}
- submit button → {% include 'fragments/button.html' with ... %}
- lost/register/token/refer/op → fragment includes via data arrays from PHP
  1. form-add.html, form-wrap.html: attribute normalization and slot alignment
  2. fieldset-block.html: field/content slot updates
  3. contact-block.html: minor field alignment

Benefits:

  • login-nav partial is now fully fragment-based — no inline HTML strings
  • title fragment covers h2/h3/h4 with or without raw HTML content
  • span and post-div cover remaining inline layout needs without new fragments

Technical notes:

  • Applied identically to default, lite, and simple themes
  • templates/lite/index.php updated for related partial/fragment API changes
Refactor: modules — migrate callers to new fragment/partial contracts
Автор: Eduard Laas | Дата: 15:21 20.04.2026

Replace obsolete single-purpose fragments and partials with generic alternatives across all affected modules. Forms previously delegated to dedicated partials are now built inline using form-add/form-wrap + form-field-row + form-submit, removing the need for thin wrapper partials that added no reusable logic.

Core changes:

  1. submit → form-submit across all callers (account, files, forum, links, money, news/admin, recommend, rss, search, shop, voting, whois, contact):

    • Replaces the standalone submit input fragment with the standard form-submit
 which integrates class and extra-attribute support
  1. Partial-to-inline form migration:

    • contact: contact-form partial → form-add with inlined form-field-row fields
    • files/media: files-download-form partial → form-wrap with inline form-submit
    • forum: forum-reply-form partial → form-add with form_attr for sl-forum-reply-form
    • money: calculator-form partial → form-add with inlined number/result/button fields
    • whois: mini-post-form partial → form-add; fieldset-post-form → fieldset-block
  2. Fragment replacements:

    • auto_links: auto-links-code-row + auto-links-embed-link/image → table-row + textarea
    • auto_links/news: code-table → table open/close with is_form flag
    • content/news/links: div-hr → post-div with has_hr flag and id preserved
    • content: tip → post-div with date-badge + span(sl_views) inside
    • media: media-link-row → form-field-row with link label and input
    • voting: voting-basic → post-div with class post-vote
    • shop: shop-cart-button → link with is_htmx; shop-kasse-content → post-div
    • recommend: recommend-success-text → alert or direct text
  3. Email/notification fragments:

    • contact: contact-email-body → message-block partial with lines[]
    • recommend, rss, money: respective email fragments → message-block partial

Benefits:

  • Thin wrapper partials (files-download-form, forum-reply-form, calculator-form, mini-post-form, contact-form) no longer needed; forms built from generic parts

  • submit fragment eliminated as a standalone — form-submit is the canonical form
  • div-hr, tip, auto-links-code-row removed as call sites are updated

Technical notes:

  • No functional behavior changes — structure and HTML output remain equivalent
  • All 17 affected module files updated in this commit
Refactor: core — migrate pdo, helpers, security, system, user to new fragment API
Автор: Eduard Laas | Дата: 15:20 20.04.2026

Continue the contract-driven fragment migration: replace obsolete single-purpose fragments with boolean-flag extensions of existing generic fragments or consolidated partials, removing the last CSS class strings from PHP callers.

Core changes:

  1. Database error display (core/classes/pdo.php):
  2. pdo-error-badge → getHtmlFrag('span', ['label', 'content_html', 'is_danger' => true])
  3. Utility helpers (core/helpers.php):
  4. getTplRadioGroup(): radio-group → post-div with class sl-radio-group
  5. getTplNewGraphic(): graphic → span with icon class and title
  6. rss_read(): rss-source-title → title fragment (is_level_two) + link (is_blank)
  7. letter(): line-stack-item → span with sl-line-stack-item class and is_line_break flag
  8. addFilescanTask(): security-mail-message → getHtmlPart('message-block', ...)
  9. encode_php(): code-table → table open/close with is_form flag
  10. render_blocks(): msg-center → post-div with is_center flag
  11. warnings(): warning-list → list fragment
  12. Security email (core/security.php):
  13. addMail(): security-mail-trace → getHtmlPart('message-block', lines[])
  14. System helpers (core/system.php):
  15. setHead(): login-nav partial extended with pre-built sub-field data arrays (name_field, password_field, submit_button, lost_link, register_link, token_field, etc.)

  16. setCategories(): category-icon → link with img_src (accessible) or span for locked; category-title → link/span with sl-catname class; category-sub-item → post-div

  17. getVotingView(): voting-post → checkbox/radio with is_plain + list-item
  18. User/message rendering (core/user.php):
  19. setComShow(): account-comment-section → nested post-div with id=comm/repcsave; submit → form-submit fragment

  20. setMessageShow(): messagebox → post-div with class message-box + title fragment; introduced $messageBox closure to deduplicate the four view-type branches

  21. getPrivateMessageView(): submit → form-submit fragment

Benefits:

  • PHP callers no longer embed CSS class knowledge or HTML structure decisions
  • login-nav partial now fully self-contained: all sub-elements passed as data arrays
  • Voting form uses standard checkbox/radio fragments instead of custom voting-post
  • Security email footers unified through message-block partial

Technical notes:

  • security-mail-trace and security-mail-message fragments no longer referenced
  • category-icon and category-title fragments no longer referenced from PHP
  • voting-post fragment no longer referenced from PHP
  • code-table fragment no longer referenced from PHP
Chore: config — update base fingerprint
Автор: Eduard Laas | Дата: 14:28 20.04.2026

Regenerated base_fingerprint after the template and core refactor wave to reflect the current canonical state of the codebase.

Core changes:

  1. Fingerprint update (config/local.php):
  2. base_fingerprint: f005dfd5acda9f455681e75d1976bf6c15b89e63 → 9bac3d7739a31f67a5d1f459dec1ae23f316a997

Benefits:

  • Config fingerprint matches the refactored codebase state
  • Prevents false-positive base-mismatch warnings on next run

Technical notes:

  • Automatic regeneration; no logic changes
Style: templates/css — add sl-fieldset, sl-text, sl-rate, sl-letter rules across all themes
Автор: Eduard Laas | Дата: 14:28 20.04.2026

Add new sl-* CSS rules required by the consolidated partial and updated fragment templates introduced in this refactor wave. Applied uniformly to default, lite, and simple themes.

Core changes:

  1. Fieldset and text utility classes (*/assets/css/new.css):
  2. sl-fieldset-form-legend-success, sl-fieldset-form-legend-danger: fieldset legend states
  3. sl-fieldset-center: centered fieldset content
  4. sl-fieldset-legend-info: info-state legend color
  5. sl-text-success, sl-text-danger: inline text state colors
  6. sl-text-bold: font-weight shorthand
  7. sl-text-justify: text-align helper
  8. Alpha navigation letter badge:
  9. sl-letter: styled inline letter box for alpha-nav links (replaces old inline style)
  10. Rating system CSS (sl-rate-*):
  11. sl-rate, sl-urating, sl-crating: star rating bar layout and positioning
  12. min-rate variants: compact 16px rating bar for content lists
  13. sl-rate-like, sl-rate-plus, sl-rate-minus: like/dislike button sprites
  14. sl-rate-num, sl-rate-is: score bubble with directional arrow and active state
  15. data-sl-rating-width attribute selectors (0–100): replace inline style width for CSP compliance and data-attribute-driven rendering

Benefits:

  • All visual state decisions moved from PHP into CSS and data-attributes
  • data-sl-rating-width eliminates inline style="width:X%" on rating bars
  • New utility classes cover fieldset/form feedback states without custom CSS

Technical notes:

  • sl-rate-* rules migrated from legacy inline CSS; no functional change
  • data-sl-rating-width selectors cover 0–100 integer percent values
  • Applied identically to default, lite, and simple themes
Refactor: templates — remove obsolete fragments replaced by consolidated contracts
Автор: Eduard Laas | Дата: 14:27 20.04.2026

Delete all fragment templates that are no longer referenced by PHP callers after the migration to boolean-flag fragments, unified partials, and merged rating/list/action contracts. Applied uniformly to default, lite, and simple themes.

Core changes:

  1. Fragments replaced by boolean flags in existing fragments:
  2. category-link → link with is_category; category-select → select
  3. action-delete → link with is_delete; action-menu-item → list-item
  4. comment-date → inline-badge with is_comment_date
  5. comment-avatar → image with is_avatar; comment-rank-image → image
  6. meta-value → span with label; bold-text → span with is_bold
  7. br-line, break → removed (handled inline or replaced by list/line-stack-item)
  8. view-field → field-value fragment; heading-2 → title fragment
  9. alpha-nav-link, alpha-nav-text → removed (caller handles inline)
  10. navi-tab-link → link + list-item combination
  11. Fragments replaced by consolidated partials:
  12. account-view → partials/account-view; login → partials/login-nav
  13. contact-form, contact-email-body → partials/contact-form + message-block
  14. ajax-textarea-form → partials/form-wrap
  15. forum-reply-form, forum-mod-form, forum-mod-check, forum-mod-checkall → partials/forum-reply-form
  16. forum-htmx-edit-link, forum-status-img, forum-status-img-link, forum-topic-icon → partials
  17. files-download-form → partials/files-download-form
  18. recommend-form, recommend-mail-message → partials/recommend-form + message-block
  19. rss-info-form, rss-read-forms → respective partials
  20. session-summary → partials/session-summary
  21. shop-kasse-form, shop-voting-box → partials/shop-kasse-form
  22. voting-widget → partials/voting-widget
  23. whois-domain-form, whois-info-button, whois-license-add-button, whois-license-form, whois-output-open/line/close, whois-result → partials/whois-output

  24. money-email-confirm, money-email-order, order-email-admin → partials + message-block
  25. comment-list-form → partials/mini-post-form; privat-message → forum-view-basic
  26. main-slider → partials/main-slider
  27. Rating duplicates removed:
  28. rating-bar-live, rating-like-live → merged into rating-bar/rating-like with is_live flag
  29. Misc micro-fragments removed:
  30. modul-link, media-link-break, media-post-badge, form-submit-btn
  31. faq-quicklinks-open, faq-quicklinks-row, faq-quicklinks-close → table/table-row
  32. partials/alerts, partials/login-without, partials/login

Benefits:

  • Removes ~180 dead template files from the repository
  • Fragment directory contains only actively used atomic components
  • Eliminates the possibility of callers using stale/obsolete contracts

Technical notes:

  • All deleted files have confirmed zero callers after previous refactor commits
  • Applied identically to default, lite, and simple themes (~180 files total)
Refactor: templates — update existing fragments to boolean-flag contracts
Автор: Eduard Laas | Дата: 14:26 20.04.2026

Rewrite existing fragment and partial templates to accept boolean semantic flags instead of raw CSS class strings, consolidate conditional rendering logic inside the templates, and merge live/static rating variants into unified fragments. Applied uniformly to default, lite, and simple themes.

Core changes:

  1. Universal fragments updated to accept boolean flags:
  2. link: is_footer_button, is_last, is_account_button, is_votes, is_comments, is_delete, is_category, is_avatar_link, is_blank

  3. image: is_avatar (adds sl_avatar class internally)
  4. span: is_highlight, is_bold, is_message_in/out/save, is_hidden, is_votes
  5. post-div: is_form_submit, is_center
  6. table: is_form, is_avatar_grid, is_amount, is_faq; open/close handled internally
  7. select: is_account (replaces sl-field--account class string)
  8. button: is_legacy_green (replaces sl_but_green class string)
  9. textarea: is_editor_area (replaces sl_earea class string)
  10. comment-action-ajax: is_button_blue flag
  11. inline-badge: is_comment_date variant
  12. category-row: is_hidden flag replaces style string
  13. table-row: is_avatar flag in cell context
  14. Rating fragments merged and extended:
  15. rating-bar: absorbs rating-bar-live behavior via is_live + target_id flags; has_score replaces nrate class string; data-sl-rating-width attribute for CSS

  16. rating-like: absorbs rating-like-live behavior via is_live flag; has_score replaces nrate class string

  17. rating-wrap: is_like replaces wrap_class string
  18. Forum/view fragments updated:
  19. forum-view-basic: extended with is_private_message flag and new meta fields
  20. comment.html: updated field names for consistency
  21. Navigation and account fragments:
  22. account-nav, account-nav-item: updated slot names
  23. login-logged, navi, msg-center, main-section, main-content-item: minor updates
  24. Partials updated:
  25. view.html, contact-block.html: field name and conditional logic updates

Benefits:

  • Templates own their own CSS decisions — PHP passes intent, not class names
  • Fewer breaking changes needed for future CSS refactors
  • Rating templates unified: 4 fragments → 2 with conditional live behavior

Technical notes:

  • rating-bar-live and rating-like-live fragments are no longer called from PHP (they remain as dead files until the delete commit removes them)

  • All changes are backward-compatible within the new boolean API
Refactor: templates — add new partial and fragment templates across all themes
Автор: Eduard Laas | Дата: 14:24 20.04.2026

Introduce consolidated partial templates and new utility fragments that replace multiple scattered atomic fragments with single reusable view-level contracts. Applied uniformly to default, lite, and simple themes.

Core changes:

  1. New partial templates (*/partials/):
  2. account-view: full user profile view shell
  3. contact-form: contact page form with captcha and field layout
  4. editor-upload-panel: BB-editor file upload panel with HTMX upload form
  5. fieldset-block: generic fieldset wrapper with legend and content
  6. fieldset-post-form: fieldset-wrapped post/comment add form
  7. files-download-form: file download action form
  8. form-wrap: generic form container (replaces ajax-textarea-form partial)
  9. forum-reply-form: forum reply/edit HTMX form
  10. line-list: ordered/unordered list layout for inline stacked items
  11. login-nav: login form embedded in site header navigation
  12. main-slider: front-page image slider partial
  13. message-block: generic labeled key-value email/notification block
  14. mini-post-form: compact inline post form
  15. recommend-form: recommend-to-friend form
  16. rss-info-form: RSS subscription info and subscribe form
  17. rss-read-forms: RSS reader add-source form
  18. session-summary: active session overview table
  19. shop-kasse-form: shop checkout/order form
  20. voting-widget: voting poll with results, admin controls, and footer links
  21. whois-output: WHOIS domain/IP lookup result panel
  22. New utility fragments (*/fragments/):
  23. list / list-item: generic ol/ul list and li item (replaces inline HTML lists)
  24. line-stack-item: stacked inline item wrapper
  25. debug-section: debug info section header
  26. debug-stats: CPU/memory stats row in debug panel
  27. email-noscript: noscript fallback block for HTML emails
  28. rss-source-title: RSS source title row
  29. security-mail-message: security event notification email body

Benefits:

  • Eliminates inline HTML string concatenation for complex form/view layouts
  • Single template file per concept instead of 3-8 micro-fragments per form
  • Uniform partial contracts across all three themes

Technical notes:

  • Applied identically to default, lite, and simple themes (87 new files total)
  • PHP callers updated in preceding commits; these files complete the contract
Refactor: admin + modules — migrate callers to new fragment/partial API
Автор: Eduard Laas | Дата: 14:23 20.04.2026

Update all module callers to match the updated fragment/partial contracts: replace CSS class strings with boolean semantic flags, adopt consolidated partials for forms and views, and align getPageNumbers() calls with the dropped $frag parameter.

Core changes:

  1. Fragment API normalization (all 20 modules + admin/modules/referers.php):
  2. link: 'class' => 'sl_but_foot' → is_footer_button; 'class' => 'sl_last' → is_last; 'class' => 'sl_but' → is_account_button; 'class' => 'sl_votes/sl_coms' → is_votes/is_comments

  3. image: 'class' => 'sl_avatar' → is_avatar; link_class sl-avatar-link → is_avatar_link; 'img_class' → is_avatar in table-row cells

  4. table: 'class' => 'sl_table_form' → is_form; + is_avatar_grid flag for avatar grids; 'class' => 'sl_table_amount' → is_amount

  5. post-div: 'class' => 'sl-form-submit' → is_form_submit; 'class' => 'sl_center' → is_center
  6. select: 'select_class' => 'sl-field--account' → is_account
  7. submit: 'class' => 'sl_but_blue' removed (fragment uses default style)
  8. Partial migration:
  9. contact: contact-form → getHtmlPart('contact-form'); contact-email-body → message-block
  10. account: account-view → getHtmlPart('account-view')
  11. faq: faq-quicklinks-open/row/close → table/table-row/table with is_faq flag
  12. files, forum, whois, shop, rss, recommend, money, order: respective obsolete fragments → partials
  13. Action element migration:
  14. action-delete → link with is_delete flag (across forum, content, faq, voting, news, etc.)
  15. action-menu-item → list-item with content_html key (all editor action menus)
  16. getPageNumbers() caller updates (admin + all modules):
  17. Drop first $frag argument from every call site

Benefits:

  • Modules no longer carry CSS knowledge — all styling decisions live in templates
  • Consistent boolean flag convention across all call sites
  • Partial-based forms reduce inline HTML from module PHP files

Technical notes:

  • getPageNumbers() breaking change handled in all 21 affected call sites
  • No functional behavior changes — pure API contract migration
Refactor: core — migrate helpers, security, system, user to new partial/fragment API
Автор: Eduard Laas | Дата: 14:22 20.04.2026

Replace raw CSS class strings and obsolete fragment names with boolean semantic flags and consolidated partial templates, completing the contract-driven template layer. getPageNumbers() signature simplified by removing the unused $frag parameter.

Core changes:

  1. Fragment/partial API migration (core/helpers.php):
  2. getPageNumbers(): remove dead $frag param, update all internal call sites
  3. getTplViewFieldRows(): view-field → field-value, label → label key rename
  4. getTplBbEditor(): inline HTML → getHtmlPart('editor-upload-panel', ...)
  5. getTplAjaxTextarea(): ajax-textarea-form → getHtmlPart('form-wrap', ...) + inlined buttons
  6. getRatingAsync(): nrate class string → has_score bool; rating-like-live/rating-bar-live merged into unified rating-like/rating-bar with is_live flag; wrap_class → is_like bool
  7. getTplCategorySelect(): category-select → getHtmlFrag('select', ...)
  8. Security email templates (core/security.php):
  9. addHackReport/addWarnReport: security-report-email + br-line → getHtmlPart('message-block', lines[])
  10. System helpers (core/system.php):
  11. setHead(): getHtmlFrag('login') → getHtmlPart('login-nav')
  12. filterTextHighlight(): remove admin-only span-raw branch, use span with is_highlight flag
  13. setCategories(): style string → is_hidden bool; category-link → link with is_category flag; category-row style → is_hidden
  14. addSitemapTask(): inline HTML ol/li → list/list-item fragments; add $tpl to globals
  15. getNaviTabs(): navi-tab-link → link + list-item
  16. getVotingView(): action-delete → link with is_delete; action-menu-item → list-item; voting-widget → getHtmlPart; CSS class strings → is_* booleans; width calculation clamped with max/min/round
  17. User/message templates (core/user.php):
  18. setComShow: submit class removed (default style)
  19. setMessageShow: post-div class → is_center bool
  20. getPrivateMessageView: action-menu-item → list-item; comment-date → inline-badge with is_comment_date; comment-rank-image → image; meta-value → span with label; privat-message → forum-view-basic with is_private_message; span class strings → is_* booleans

Benefits:

  • PHP callers no longer embed CSS class strings, removing style coupling
  • Partial contracts centralize layout logic in templates
  • Unified rating-like and rating-bar fragments (removed *-live duplicates)
  • Cleaner boolean API reduces fragile string concatenation

Technical notes:

  • getPageNumbers() signature change is breaking for all callers (all updated in this commit)
  • rating-like-live and rating-bar-live fragments no longer referenced from PHP
  • message-block partial replaces security-report-email + br-line combination

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

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

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

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