Чтение RSS каналов

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

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

Всего: 500 Доступных коммитов | Отфильтровано: 500 Коммиты | Страница: 1 / 50
Вчера (27.04.2026)
Refactor: Consolidate admin CSS theme and route class names through templates
Автор: Eduard Laas | Дата: 23:27 27.04.2026

Reorganize admin theme into two stylesheets and stop emitting CSS class strings from PHP. Asset loader now auto-discovers theme CSS files instead of using a hardcoded list.

CSS structure - Add templates/admin/assets/css/base.css: HTML tag resets, typography, base form element styling. No classes - Merge legacy system.css and new.css into templates/admin/assets/css/theme.css along with the previous theme.css contents (page chrome, login-shell, components). Delete obsolete system.css and new.css - Replace hardcoded ['theme.css','system.css','new.css','blocks.css'] list in core/security.php and core/access.php with new helper getThemeCssFiles() that globs templates/{theme}/assets/css/*.css alphabetically. New helper added in core/system.php

Dead CSS removal - Drop legacy underscore aliases: .sl_first (was emitted by core/admin.php), .sl_warn/.sl_info/.sl_atten (unused in admin), .sl_tip aliasing (~14 selector groups in new.css), and .sl_info:before/.sl_warn:before sprite hook - Drop duplicate .sl-form-control declaration that lived in both system.css and new.css. Canonical declaration now in theme.css - Fix .sl-admin-shell .sl-table-list selector which never matched (admin uses .sl-table-list-sort) - selector corrected to .sl-table-list-sort

Debug section tone vocabulary - Normalize debugSection() tones in core/system.php from ad-hoc color names (system/green/blue/orangered/purple/fuchsia/red) to a small semantic palette: info/success/warn/danger/accent - Add matching .sl-debug-section-info and .sl-debug-section-accent CSS rules alongside existing success/warn/danger so all PHP-passed tones now apply

Renames driven by 'no PHP-emitted CSS class strings' rule - Rename .sl_code_editor to .sl-code-editor across plugins/editors/codemirror (driver.php and assets/cm6.css) and theme.css - Rename .sl-status-status-blue to .sl-status-blue (drop the duplicated word) in theme.css and templates/admin/partials/basic-monitor.html

Templates take ownership of class names previously emitted by PHP - Drop 'class' field from getAdminTopMenu() items in core/admin.php (the legacy sl_first rules were redundant against the toolbar baseline anyway) - New fragment editor-robots-button.html plus sibling editor-robots-button.js delegate replace the inline class='sl-but-green' and onclick handler that admin/modules/editor.php used to emit. Runtime auto-injects the JS sibling - New fragment monitor-info-icon.html replaces the '<i class="bi bi-info-circle sl-monitor-info-icon">' string that admin/modules/monitor.php::getTooltipText() used to build - Extend getTplAddDateTime() in core/helpers.php with is_config flag and drop the 'attr' parameter. All five callers in admin/modules/config.php and modules/account/admin/index.php now pass 'is_config' => true instead of 'attr' => 'class="sl-select-config"' - Drop the $clas parameter from getTplModuleSelect() in core/helpers.php; the function now passes 'is_config' => true to the select fragment internally. Callers in admin/modules/config.php and modules/sitemap/admin/index.php updated - Introduce private buildBbcodeImage() in core/classes/parser.php so the parser owns its <img class='sl-img'> markup in one place. Four [img] bbcode handlers updated to call it

Test fixture - tests/Unit/AdminPageRenderFlowTest.php: switch fixture string from 'class=\"sl_warn\"' to 'class=\"sl-warn\"' to match the dash convention

Refactor: Strip public-only sl_* CSS from admin system.css
Автор: Eduard Laas | Дата: 15:34 27.04.2026

Admin and public templates load separate CSS contexts and never share stylesheets. All sl_* rules in templates/admin/assets/css/system.css that are only used in public templates (or not used anywhere) have been removed. The file now contains only what the admin area actually needs.

Core changes:

  1. Removed — dead CSS (public-only, never loaded in admin):
  2. .sl_hidden, .sl_none (public table/layout helpers)
  3. .sl_conf, .sl_note, .sl_small, .sl_label (public form helpers)
  4. .sl_orange, .sl_blue (public color utilities)
  5. .sl_avatar (public user avatar)
  6. .sl_atten, .sl_warn, .sl_info (public alert boxes)
  7. .sl_menu, .sl_drop, .sl_drop-form (public nav — admin uses sl-menu in new.css)
  8. .sl_right, .sl_left, .sl_center, .sl_pos_right, .sl_pos_center (public positioning)
  9. .sl_num, .sl_pnum, .sl_flag (public meta icons)
  10. .sl_rate, .sl_urating, .sl_out, .sl_over, rate-box, min-rate (public ratings)
  11. .sl_n_act, .sl_coms, .sl_n_deact, .sl_plus, .sl_post, .sl_date, .sl_cat, .sl_views, .sl_votes (public module meta icons)

  12. .sl_loading (public Ajax loader)
  13. .sl_preview_mini (public image preview)
  14. .sl_bodyline, .sl_blockline (public content blocks)
  15. .sl_img_mod, .sl_td_mod, .sl_tab_bl, .sl_tab_blm, .sl_img_blm (public block tables)
  16. .sl_table_block, .sl_table_edit, .sl_table_form, .sl_table_conf, .sl_table_basic (public tables)
  17. sl_table_conf td .CodeMirror (dead rule — sl_table_conf not used in admin)
  18. Kept — admin-active rules:
  19. CodeMirror base styles (.CodeMirror, .CodeMirror-hints)
  20. .sl-field, .sl-form-control (used in admin.php and categories.php)
  21. .sl-red, .sl-green (used in pdo.php debug output)
  22. .sl-callout-* (used in parser.php for admin markdown rendering)
  23. .sl-sort / .sl-sort-asc / .sl-sort-desc (used in slaed.js tablesort)
  24. .sl-but* button variants (used throughout admin)
  25. .sl-preview* (used in admin/partials/preview.html)

Benefits: - system.css shrinks from ~620 lines to ~190 lines - Zero dead CSS remains in admin stylesheet - No risk of admin accidentally inheriting public-only styles

Technical notes: - Public templates have their own system.css in templates/default|lite/assets/css/ - Removed classes remain intact in public template CSS files — no public breakage

Chore: Remove obsolete admin logo sprite images
Автор: Eduard Laas | Дата: 15:24 27.04.2026

slaedcms.png and 000slaedcms.png were the CSS-background logo images referenced via background-image in theme.css. The admin logo is now rendered as an <img> tag (committed in Feature: Admin logo selection), so these sprite files are no longer referenced anywhere and can be removed.

Core changes:

  1. Deleted: templates/admin/images/slaedcms.png
  2. Deleted: templates/admin/images/000slaedcms.png

Benefits: - Repository no longer carries unreferenced binary assets - Grep confirms zero remaining references to these filenames in PHP, CSS, or templates

Technical notes: - Replacement logo images live in templates/admin/images/logos/ - No functional change; CSS background-image sprite approach was already removed

Refactor: Rename sl_* to sl-* CSS classes in admin area
Автор: Eduard Laas | Дата: 15:24 27.04.2026

All sl_* class names actively used within the admin area are renamed to the canonical sl-* (dash) convention. Dead CSS rules that were already superseded by equivalents in new.css are removed.

Core changes:

  1. Sort indicators (plugins/system/slaed.js):
  2. classList operations renamed: sl_sort → sl-sort, sl_sort_asc → sl-sort-asc, sl_sort_desc → sl-sort-desc (6 occurrences)

  3. Markdown callouts (core/classes/parser.php):
  4. $map array updated: sl_callout_note/tip/important/warning/caution → sl-callout-note/tip/important/warning/caution

  5. DB debug colors (core/classes/pdo.php):
  6. $color values renamed: sl_red → sl-red, sl_green → sl-green
  7. Admin CSS (templates/admin/assets/css/system.css):
  8. .sl_sort / .sl_sort_asc / .sl_sort_desc → .sl-sort / .sl-sort-asc / .sl-sort-desc
  9. .sl_callout_ (10 selectors) → .sl-callout-
  10. .sl_red → .sl-red, .sl_green → .sl-green

Benefits: - All admin-active CSS classes now follow the uniform sl-* naming convention - Grep for sl_* in admin scope returns zero hits for the renamed classes - sl_orange, sl_blue, sl_small etc. remain as-is (not used in admin area)

Technical notes: - No DB schema changes; no API changes - .sl_word alias removed separately (see next commit)

Chore: Update config fingerprint and normalize news config line endings
Автор: Eduard Laas | Дата: 13:55 27.04.2026

config/local.php fingerprint updated to reflect the new base config state after admin_logo was added to config/global.php. config/news.php line endings normalized from CRLF to LF.

Core changes:

  1. Config local (config/local.php):
  2. base_fingerprint updated to match new global config hash
  3. Config news (config/news.php):
  4. Line endings normalized (CRLF → LF); no content changes

Benefits: - Fingerprint keeps config drift detection accurate after global config additions - Consistent line endings across all config files

Technical notes: - No functional change - No DB schema changes

Chore: Remove trailing colons from changelog lang constants
Автор: Eduard Laas | Дата: 13:54 27.04.2026

Changelog module lang files contained colons embedded directly in constant values (_CHLOG_SEARCH, _CHLOG_DATE_FROM, _CHLOG_DATE_TO). These are removed to match the project-wide convention where punctuation is rendered by CSS, keeping constants reusable as plain label strings.

Core changes:

  1. Changelog lang (modules/changelog/lang/*.php — de, en, fr, pl, ru, uk):
  2. _CHLOG_SEARCH: removed trailing ':'
  3. _CHLOG_DATE_FROM: removed trailing ':'
  4. _CHLOG_DATE_TO: removed trailing ':'
  5. Changelog admin lang (modules/changelog/admin/lang/*.php — de, en, fr, pl, ru, uk):
  6. Same three constants cleaned across all six admin language files

Benefits: - Constants match the colon-free convention established across admin and module labels - No risk of double colons when constants are reused in non-label contexts

Technical notes: - No functional change; CSS ::after provides the visible colon - No DB schema changes

Refactor: slaed.js — set-prefix naming, multi-image replace, table check-all
Автор: Eduard Laas | Дата: 13:54 27.04.2026

All internal function names are renamed to the set/get convention for consistency. The global CheckBox() function is removed in favour of setTableCheckAll(), which uses data-attribute delegation. setImageReplace() now handles multiple selects via data-sl-image-replace instead of a single hardcoded id="img_replace". Tablesort extensions are inlined into setTableSort().

Core changes:

  1. Function renames (slaed.js):
  2. initLightbox → setLightbox (merged ensureLightboxStyles + createLightbox inline)
  3. close → setLightboxClose
  4. open → setLightboxOpen
  5. ensureLightbox → getLightbox
  6. toggleBlock → setToggleBlock
  7. animateSlide → setSlideMotion
  8. animateFadeScale → setFadeScale
  9. fetchJson → getJsonData
  10. initImageReplace → setImageReplace
  11. initToggleBlocks → setToggleBlocks
  12. initSlaedUi → setSlaedUi
  13. processNext → setProcessNext
  14. scan → checkScan
  15. setImageReplace():
  16. Queries all [data-sl-image-replace] selects instead of getElementById('img_replace')
  17. Falls back to legacy id="img_replace" and attaches data attribute automatically
  18. Each select targets the element whose id matches its data-sl-image-replace value
  19. setTableCheckAll() (new):
  20. Replaces global window.CheckBox(id, clas)
  21. Click delegation on th[data-sl-check-all] header cells toggles master checkbox
  22. Change delegation on master checkbox syncs all [data-sl-check-item] inputs in form scope
  23. Works with any number of tables; no global state or id coupling
  24. setTableSort():
  25. Tablesort slaedNumber and slaedDate extensions inlined here
  26. Removed standalone initTableSortExtensions(); guard flag unchanged
  27. setSlaedUi():
  28. Calls setTableCheckAll() in addition to existing initializers

Benefits: - Consistent naming convention across all internal helpers - CheckBox() global removed; no inline OnClick attributes needed in PHP/templates - Multiple image-preview selectors on the same page work without id conflicts - Tablesort extension setup no longer risks running before setTableSort

Technical notes: - window.CheckBox is gone; callers that used it must use data-sl-check-all - data-sl-image-replace attribute wired in select.html fragment - data-sl-check-all attribute wired in th.html fragment - No external API changes

Style: Admin CSS consolidation, checkbox design, and colon rule
Автор: Eduard Laas | Дата: 13:53 27.04.2026

Admin stylesheet receives a full custom checkbox design, a CSS-driven colon rule for form labels, search highlight utility, and cleanup of obsolete rules that were duplicated from or superseded by new.css. Public theme CSS files receive the .sl-highlight utility class.

Core changes:

  1. Admin new.css:
  2. Added .sl-highlight utility (red text on yellow bg) for search results
  3. Added CSS ::after colon rule for .sl-div-label and .sl-div-label-main * Suppresses colon when a radio-group follows (.sl-radio-group sibling) * Enables consistent punctuation without PHP-side concatenation

  4. Added full custom checkbox design for .sl-admin-shell input[type="checkbox"] * Appearance: 16×16px, gradient border, animated checked/indeterminate states * SVG checkmark and indeterminate bar via background-image data URIs * Focus-visible ring and disabled opacity

  5. Removed .sl-code-row-odd / .sl-code-row-even (no longer used)
  6. Removed .sl-page-title block (superseded by admin header CSS)
  7. Admin system.css:
  8. .sl_word selector extended to include .sl-highlight (aliased)
  9. Removed .sl-table-form / .sl-form duplicates (kept .sl_table_form legacy)
  10. Removed .sl-config-form / .sl-config-grid / .sl-config-item block (moved to new.css)
  11. Admin theme.css:
  12. Removed .clr utility (use clearfix or flex instead)
  13. Removed table.tabreset (no longer referenced)
  14. Removed .list-text (obsolete)
  15. Removed .lcolomn / .rcolomn float helpers
  16. Logo rule changed from CSS background sprite to img-based selector (.header h1 a sets width; .header h1 img sets display:block and height:auto)

  17. Public new.css (default, lite, simple templates):
  18. Added .sl-highlight utility class to match admin styling

Benefits: - Checkbox appearance is now fully branded and consistent across admin - Colon is a CSS responsibility, not PHP string concatenation - theme.css/system.css reduced by ~100 lines of dead rules - Public highlight class enables consistent search term styling on frontend

Technical notes: - Custom checkbox uses appearance:none + SVG data URIs; no external assets - .sl_table_form is kept for backward compat with legacy module templates - No JS or PHP changes in this commit

Feature: Radio switch mode detection and admin template fragment improvements
Автор: Eduard Laas | Дата: 13:52 27.04.2026

getTplRadioGroup() now auto-detects boolean yes/no option sets and emits the sl-radio-switch CSS class, rendering them as pill-style toggle switches. Multiple admin template fragments receive targeted attribute improvements to reduce PHP-side attribute injection and centralize behavior in the template.

Core changes:

  1. Helpers (core/helpers.php):
  2. getTplRadioGroup(): detects 2-option groups with values '0' and '1' * Auto-sets switch=true unless caller overrides via 'switch' key * Passes switch flag to block-content fragment

  3. block-content.html:
  4. Adds sl-radio-switch class when switch=true alongside sl-radio-group * Enables CSS pill/toggle rendering for boolean radio groups

  5. button.html:
  6. Auto-sets type="submit" when submit_label is present and button_type is absent * Prevents accidental type="button" on submit-intended buttons

  7. checkbox.html:
  8. is_check flag now renders class="sl-check" and data-sl-check-item attribute * Replaces inline input_class="sl-check" and manual data- injection from PHP * Used by setTableCheckAll() in slaed.js for master/item check wiring

  9. label-hint.html:
  10. Removed embedded ':' from template
  11. Wraps label text in <span class="sl-div-label-main"> for CSS ::after targeting
  12. select.html:
  13. Added selectid attribute rendered as id="{{ selectid }}"
  14. Added imgtar attribute rendered as data-sl-image-replace="{{ imgtar }}" * Replaces hardcoded id="img_replace" dependency in PHP and JS

  15. th.html:
  16. Adds data-sl-check-all attribute to is_col_check header cells * Enables setTableCheckAll() click delegation without id dependency

  17. checkbox.html (default, lite, simple templates):
  18. Same is_check / sl-check / data-sl-check-item changes for frontend forms

Benefits: - Boolean config toggles visually communicate on/off state as pill switches - Fragment attributes centralize behavior wiring; PHP passes semantic flags - setTableCheckAll() works via data attributes, removing global CheckBox() function

Technical notes: - sl-radio-switch class requires CSS from new.css to style the pill appearance - Backward compatible: groups with more than 2 options or non-bool values stay unchanged - No DB schema changes

Refactor: Remove trailing colons from form labels across modules and core
Автор: Eduard Laas | Дата: 13:52 27.04.2026

Continues the label colon removal from commit 2, covering all remaining module admin and frontend form rows. Core user.php and helpers.php are also cleaned up: form-field-row label values no longer carry hard-coded ':' suffixes, delegating colon rendering entirely to CSS.

Core changes:

  1. Core helpers (core/helpers.php):
  2. getTplAddFieldRows(): removed ':' from label_html assignment
  3. Core user (core/user.php):
  4. setComShow(): removed ':' from _YOURNAME and _COMMENT labels
  5. getPrivateMessageView(): removed ':' from _PRRE, _TITLE, _MESSAGE labels
  6. Module admin panels — all label_html colon suffixes removed:
  7. modules/account/admin/index.php
  8. modules/auto_links/admin/index.php
  9. modules/changelog/admin/index.php
  10. modules/clients/admin/index.php
  11. modules/contact/admin/index.php
  12. modules/content/admin/index.php
  13. modules/faq/admin/index.php
  14. modules/files/admin/index.php
  15. modules/help/admin/index.php
  16. modules/jokes/admin/index.php
  17. modules/links/admin/index.php
  18. modules/media/admin/index.php
  19. modules/money/admin/index.php
  20. modules/order/admin/index.php
  21. modules/rss/admin/index.php
  22. modules/search/admin/index.php
  23. modules/shop/admin/index.php
  24. modules/voting/admin/index.php
  25. modules/whois/admin/index.php
  26. Module frontend views — all label colon suffixes removed:
  27. modules/account/index.php
  28. modules/auto_links/index.php
  29. modules/contact/index.php
  30. modules/forum/index.php
  31. modules/media/index.php
  32. modules/money/index.php
  33. modules/order/index.php
  34. modules/recommend/index.php
  35. modules/rss/index.php
  36. modules/search/index.php
  37. modules/shop/index.php

Benefits: - Uniform colon rendering via CSS ::after across all form labels - Constants remain clean strings usable anywhere without punctuation - Zero functional change; affects visual rendering only via stylesheet

Technical notes: - CSS rule added in new.css targets .sl-div-label and .sl-div-label-main - No DB schema changes; no API contract changes

Всего: 500 на 50 страницах по 10 на каждой странице

Хотите опробовать SLAED CMS в действии?

Технологии

PHPMySQLHTML 5CSS 3jQueryjQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь