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

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

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

Всего: 500 Доступных коммитов | Отфильтровано: 500 Коммиты | Страница: 1 / 50
Сегодня (23.04.2026)
Refactor: frontend — erweiterte Fragmente, block-content statt content-block
Автор: Eduard Laas | Дата: 00:12 23.04.2026

Frontend-Fragmente (default/lite/simple) bekommen zusätzliche semantische Flags — span, button, input, link, table, title, code-row. Das Fragment content-block wurde in block-content umbenannt und leicht erweitert. Neu ist ein minimales partials/div.html. Das Partial block-user-info.html trennt Begrüßung in zwei separate Felder (greeting_label + greeting_name) statt eines vorformatierten HTML- Strings. Alle Aufrufer in blocks/, core/, modules/*/index.php wurden konsequent umgestellt.

Core changes:

  1. Fragment-Rename (alle 3 Themes):
  2. content-block.html gelöscht, block-content.html neu angelegt
  3. Selbe Logik + neue Flags (z.B. is_signature, is_center, is_radio_group), synchron mit Admin-Theme für einheitliche Fragmentnamen

  4. span.html (default/lite/simple):
  5. +is_form_value, is_views, is_line_stack_item, is_cat_image, is_cat_name, is_new_today, is_new_days, is_new_week

  6. Ersetzt inline class="sl_n_day" etc. durch semantische Flags
  7. button.html:
  8. +is_reload_query-Trigger mit htmx-Swap, is_legacy_green, is_back, is_navi_lower, is_login_submit

  9. Button-/Input-Varianten konsolidiert
  10. input.html:
  11. +is_form_control, is_user_search, is_search_filter
  12. Default-Klasse sl-field nur bei Abwesenheit anderer Klassenflags
  13. link.html:
  14. +is_shop_add (sl-shop-add), is_bold_label Bold-Linklabel, suffix_html für nachgestellte Badges/Icons (z.B. NewGraphic)

  15. code-row.html:
  16. row_class optional — is_odd → sl-code-row-odd / sl-code-row-even
  17. table.html / table-row.html:
  18. is_col_half im Header, is_hidden und is_forum_stat auf Row-Level
  19. fl-col-stat Spalte für Foren-Statistiken
  20. title.html:
  21. +is_plain für class="title" statt sl-title (ältere Themes)
  22. partials/block-user-info.html:
  23. greeting (HTML-String) → greeting_label + greeting_name (zwei Felder). Begrüßung wird jetzt im Template zusammengesetzt, nicht in PHP

  24. partials/div.html (neu, default/lite/simple):
  25. Minimaler generischer Div-Wrapper für einheitliche Semantik zwischen Themes

  26. partials/form-add.html:
  27. +is_calculator (sl-calculator-form)
  28. Blocks (blocks/*.php):
  29. auto_links, center, center_forum, center_media, center_plus, forum, img, languages, links, login, modules, user_info: alle Aufrufe von getHtmlFrag('content-block', ...)getHtmlFrag('block-content', ...)

  30. user_info.php: greetinggreeting_label/greeting_name, passend zum neuen block-user-info-Partial

  31. Semantische Flags ersetzen hardkodierte class-Werte (z.B. 'class' => 'sl-shop-add''is_shop_add' => true)

  32. Core (core/helpers.php, core/system.php, core/user.php):
  33. getTplRadioGroup(), getTplNewGraphic(), Footer-/Nav-Helper: content-blockblock-content, Flag-basierte Klassen

  34. getTplFieldsIn(): leerer input_class entfernt (unnötig)
  35. getTplPager(): prefix als hartkodierter Leerstring (ungenutzte Option entfernt)

  36. Module (modules/*/index.php — account, changelog, clients, contact,
content, faq, files, forum, help, jokes, links, main, media, money, news, order, pages, rss, search, shop, voting, whois):
  • getHtmlFrag('content-block', ...)getHtmlFrag('block-content', ...)
  • 'class' => 'sl-shop-add' / 'sl-section' / 'sl_n_day' → Flag-Form
  • modules/shop/index.php: title_text nicht mehr per cutstr() beschnitten — Truncation erfolgt jetzt CSS-seitig

Benefits: - Einheitlicher Fragmentname block-content im Frontend und Admin - Keine hardkodierten Klassennamen mehr in PHP für wiederkehrende Varianten (is_new_today, is_shop_add, is_section, ...) - block-user-info-Partial kann Begrüßung lokalisierungsfreundlich ohne HTML-Verkettung in PHP aufbauen - Fragmente in allen 3 Themes synchron — leichter zu warten

Technical notes: - content-block.html in default/lite/simple in diesem Commit gelöscht; alle Aufrufer sind bereits auf block-content umgestellt - Frontend-Fragmente syntaktisch 1:1 identisch zwischen den 3 Themes (Theme-spezifisches Styling über CSS, nicht Template-Variation) - Rückwärtskompatibilität: keine — Template-/Parameter-Namen ändern sich, nur innerhalb des neuen Refactor-Strangs verwendet

Refactor: admin — semantische Spalten-Flags, block-content statt content-block
Автор: Eduard Laas | Дата: 00:10 23.04.2026

Admin-Tabellen werden jetzt über semantische Spalten-Flags (is_col_id, is_col_check, is_col_author, is_col_status, is_col_actions, is_col_date, is_col_count) gestylt — hardkodierte class_name-Werte in PHP entfallen. Die Fragmente button, inline-badge, input, select, textarea, label bekommen zusätzliche Varianten-Flags (is_green/is_blue/is_plain, is_note/is_dimmed/is_success, is_inline_gap/is_search_filter etc.). Das Fragment content-block wurde in block-content umbenannt und um is_section und is_sidebar_count_list erweitert.

Core changes:

  1. Fragment-Templates (admin/fragments):
  2. block-content.html: ersetzt content-block.html + neue Flags is_section (→ sl-section), is_sidebar_count_list

  3. table-cells.html + th.html: neue Spalten-Flags is_col_id (sl-col-id), is_col_check (sl-col-check), is_col_author (sl-col-author), is_col_status (sl-col-status), is_col_actions (sl-col-actions), is_col_date (sl-col-date), is_col_count (sl-col-count)

  4. table-row.html + div-row.html: is_lang_edit, is_ratings_inner, is_hidden für Row-State-Klassen

  5. button.html: is_green/is_blue/is_plain lösen veraltete is_chlog_primary/is_chlog_secondary für Button-Varianten ab

  6. inline-badge.html: +is_note/is_dimmed/is_success/is_danger/ is_action_label/is_muted/is_green/is_red/is_category/ is_views/is_post_icon/is_date + color_attr für Inline-Style

  7. input.html: +is_config/is_ratings_days/is_form_control/ is_inline_gap/is_search_filter/translate_target

  8. select.html: +is_inline_gap/is_search_sort/is_search_order/ is_search_filter

  9. textarea.html: +is_config
  10. label.html: +is_associated_option
  11. Partials (admin/partials):
  12. div.html: +is_search_line, is_rate_box (für Ratings-Tab-Layout)
  13. form.html: +is_inline_filter (Such-Filter-Formulare)
  14. basic-monitor.html: Prüfstatus-Styling auf semantische Badges umgestellt

  15. Layout (admin/layouts):
  16. admin.html: <main class="sl-admin-content"> bekommt inneres <div class="sl-admin-content-inner"> für Grid/Flex-Container

  17. Styles (admin/assets/css):
  18. new.css: neue .sl-col-*-Regeln (Breite + Alignment für ID/Check/Author/Status/Actions/Date/Count-Spalten), .sl-section, .sl-inline-gap, .sl-search-filter-field, .sl-lang-edit-row, .sl-ratings-inner-row, .sl-associated-option

  19. theme.css: minimale Layout-Anpassung für sl-admin-content-inner
  20. Core + Module (core/admin.php, admin/modules/, modules//admin/):
  21. Alle Aufrufe von getHtmlFrag('content-block', ...) auf getHtmlFrag('block-content', ...) umgestellt

  22. class_name => 'sl-col-id' und ähnliche auf Flag-Form ('is_col_id' => true) migriert — gilt für alle Admin-Tabellen in admins, comments, config, database, favorites, groups, lang, messages, modules, monitor, newsletter, ratings, scheduler, statistic sowie alle modules/*/admin/index.php

Benefits: - Spaltenbreiten/-Ausrichtung deklarativ in CSS statt verstreut in PHP - Konsistente Button-/Badge-Varianten ohne Zeichenketten-Klassennamen - Ein einziger Fragmentname (block-content) statt gemischter content-block-Nutzung - Klarere Trennung von Admin-Spalten-Semantik und freien Klassen

Technical notes: - content-block.html im admin-Theme wird in diesem Commit gelöscht; alle Aufrufer sind bereits auf block-content umgestellt - is_*-Flags sind additiv kombinierbar; Reihenfolge im Template bestimmt die CSS-Klassen-Reihenfolge - color_attr in inline-badge ersetzt Inline-<span style="color:..."> und erlaubt beliebige Hex/CSS-Color-Werte

Style: frontend blocks — sl-block-Wrapper und block-*-Klassen (default/lite/simple)
Автор: Eduard Laas | Дата: 00:07 23.04.2026

Nach dem Block-Refactor (Commit 2ff47e47) nutzten die neuen atomaren Fragmente bereits die Klassen sl-block, block-modules, block-flags, block-menu, block-login etc., doch die zugehörigen CSS-Regeln waren in den Themes nicht vorhanden. Ohne diese Styles fielen Sidebar-Blöcke wie modules.php in rohen Inline-Fluss und «verschluckten» visuell die nachfolgenden Blöcke — auf einer frischen Installation war faktisch nur der Inhalt des languages.php-Blocks sichtbar.

Core changes:

  1. Block-Wrapper (sl-block, sl-block-content):
  2. sl-block: Hintergrund #f6f8fa, padding 15px, border-radius 8px, margin-bottom 25px (Visuelles Äquivalent zur alten .block-Regel in blocks.css, aber für das neue <aside class="sl-block">-Markup)

  3. sl-block-content: line-height 1.4 für lesbare Block-Inhalte
  4. #sidebar .sl-block:last-child: kein margin-bottom (letzter Block)
  5. modules.php (block-modules, block-mod-section):
  6. .block-modules: flex-column mit 4px gap — Navigation als saubere vertikale Liste statt Inline-Fluss

  7. .block-modules .sl-module: display:block + padding 4px 2px für klickbare Zeilen

  8. .block-mod-section: Separator + kleinere Schrift für Moderator- Unterabschnitte (invisible/inactive Modules, Admin-Bereich)

  9. languages.php (block-flags):
  10. .block-flags: flex-wrap mit 6px gap, align-items center — Flaggen flüssig nebeneinander mit sauberen Abständen

  11. .block-flags a: display inline-flex für konsistente Vertikalzentrierung
  12. login.php / user_info.php (block-login):
  13. .block-login p: margin 6px 0 — Zeilenabstände im Login-Formular
  14. .block-login input: margin 3px 0 — vertikaler Breathing Space
  15. menu.php (block-menu):
  16. .block-menu ul: list-style none, padding 0, margin 0 — DB-Menü ohne Standard-Listendarstellung

  17. .block-menu li: margin 4px 0 — Abstand zwischen Menüpunkten

Benefits: - Frisch installierte Sidebar-Blöcke rendern sichtbar und nicht mehr als zerfließender Inline-Text - Visuelle Parität zur alten .block-Regel ohne Markup-Rückportierung - Konsistente Klassen in default/lite/simple — ein einziger Styleset für alle drei Frontend-Themes

Technical notes: - Rein additiv: keine bestehenden Regeln geändert oder entfernt - Legacy-Regel .block in blocks.css bleibt unberührt für evtl. noch nicht migrierte Templates - TODO aus Commit 2ff47e47 erledigt: "Neue sl-*-Klassen (block-login, block-flags, block-menu) in new.css zu ergänzen"

Вчера (22.04.2026)
Chore: config/local.php — base_fingerprint nach Template-Refactor aktualisiert
Автор: Eduard Laas | Дата: 22:22 22.04.2026

Fingerprint spiegelt den aktuellen Stand nach Einführung der Table- Fragment-API (is_truncate/is_fixed) und der Admin-Login-Auth-Form- Vereinheitlichung wider.

Feature: admin tables — is_truncate/is_fixed API statt inline cutstr()
Автор: Eduard Laas | Дата: 22:22 22.04.2026

Neues deklaratives Truncation-Modell für Admin-Tabellen: Zellen und Spaltenköpfe können als is_truncate markiert werden, die Tabelle selbst als is_fixed. Rendering und Ellipsis übernimmt das Template via table-layout: fixed + text-overflow: ellipsis; cutstr()-Aufrufe in PHP entfallen, echter Volltext bleibt im title-Attribut verfügbar.

Core changes:

  1. Fragment-Templates (table.html, table-cells.html, th.html):
  2. table.html: rendert .sl-table-fixed-Klasse wenn is_fixed gesetzt ist
  3. table-cells.html: unterstützt pro Zelle class_name, is_truncate, title_text; kombiniert Klassen und fügt sl-cell-ellipsis hinzu

  4. th.html: analoge Logik für Header-Zellen mit is_truncate
  5. Styles (new.css):
  6. .sl-table-fixed mit table-layout: fixed
  7. .sl-cell-ellipsis: max-width:0 + overflow:hidden + white-space:nowrap + text-overflow:ellipsis — funktioniert im fixed-Layout als Begrenzung

  8. Spaltenbreiten-Regeln via tr:has(> th:nth-child(N):last-child) für 5er/6er Heads und für rechte Aktions-Spalte (.sl-th-center)

  9. Core (core/admin.php):
  10. getAdminCategoryList / getAdminBlockList / getAdminFavoriteList / getAdminPrivateList: cutstr($title, N) in label_text entfernt — Ellipsis erfolgt jetzt rein visuell in der Tabellenzelle

  11. Admin-Module (admin/modules/*.php):
  12. admins, groups, lang, messages, modules, newsletter, referers, scheduler, security: Titel/Name/Modul-Spalten auf is_truncate + title_text umgestellt; Tabellen mit is_fixed markiert

  13. Modul-Admins (modules/**/admin/index.php):
  14. account, auto_links, clients, content, faq, files, forum, help, jokes, links, media, money, news, order, pages, search, shop, voting, whois: gleiche Umstellung für Title/URL/Email-Spalten

  15. shop, auto_links, links: zusätzlich domain()/cutstr()-Längen entfernt
  16. search: komplette Searchaudit- und Toplist-Heads mit is_truncate
  17. whois: 4 Spalten (Site/Host/DC/Poster) auf is_truncate

Benefits: - Keine hardkodierten Zeichen-Limits mehr im PHP-Code - Volltext bleibt im title-Attribut für Hover/Screenreader - Responsiv korrekte Spaltenbreiten über :has()-Selektoren - Einheitliches Truncation-Verhalten in allen Admin-Tabellen

Technical notes: - Breitenregeln nutzen CSS :has() — moderne Browser (Chrome 105+, Firefox 121+, Safari 15.4+) werden vorausgesetzt - Erst-Spalte (typisch ID) bekommt 42px außer bei is_truncate - Rechte Toolbar-Spalte (.sl-th-center) bekommt fixe 36px + 102px für Status und 100px für Author — stabile Layouts bei dynamischen Daten

Refactor: admin login — unified auth-form partial, sl-admin-login-* styles
Автор: Eduard Laas | Дата: 22:21 22.04.2026

Login- und Registration-Partials wurden zu einem einzigen auth-form Partial mit row-basierter API zusammengeführt. Das Shell/Layout der Login-Seite wurde auf eigene sl-admin-login-* Klassen umgestellt und die dazugehörigen Styles in ihre eigene Sektion ausgelagert.

Core changes:

  1. Templates (auth-form.html, layouts/bare.html):
  2. Neues partials/auth-form.html: rendert beliebige Formular-Zeilen über ein rows[]-Array (label, field_html, has_colon)

  3. Alte partials/login.html und partials/registration.html entfernt
  4. layouts/bare.html: Klassen `wrapper/slaenter/wraptop/wrapmid/wrapfoot/ entercont/header/footer/sl-admin-header/sl-admin-toolbar` durch neue sl-admin-login-*-Familie ersetzt; Toolbar-Block entfernt

  5. Admin-Entry (admin/index.php):
  6. login()-Funktion: beide Zweige (Erst-Registrierung + Standard-Login) nutzen jetzt getHtmlPart('auth-form', ...) mit rows-Array

  7. Feldaufbau inline via getHtmlFrag('input'|'radio', ...)
  8. Captcha wird als zusätzliche Zeile ohne Label in rows angehängt
  9. Styles (new.css, theme.css):
  10. new.css: eigener "Admin login"-Abschnitt mit .sl-admin-login-shell, -card, -header, -content, -list, -form-frame, -field, -submit, -footer, -copyright + Responsive-Regeln (700px/560px)

  11. theme.css: Selektoren .slaenter / .wrapper:not(.slaenter).sl-admin-login-shell / .wrapper:not(.sl-admin-login-shell)

  12. theme.css: doppelter body:has(.slaenter)-Block entfernt (jetzt ausschließlich in new.css)

Benefits: - Ein einziges Partial für beide Auth-Flows — keine Duplikation - Flexible Felder-Reihenfolge/-Anzahl über rows[] (z.B. Captcha-Row) - Trennung von Admin-Login-Layout (new.css) und Grundlayout (theme.css) - Konsistente sl-admin-*-Namenskonvention auch im Login-Flow

Technical notes: - Kein Funktionswechsel, reine Template/Style-Konsolidierung - sl-admin-login-top und -bottom bleiben als leere Slots im Markup (display:none), um zukünftige Layout-Akzente ohne HTML-Änderung zu erlauben

Style: admin CSS — Toolbar-Redesign, Button-Vereinheitlichung, Modul-Head-Grid
Автор: Eduard Laas | Дата: 15:35 22.04.2026

Toolbar komplett neu gebaut: Flexbox-Layout, dezenter Hintergrund-Verlauf, abgerundete Item-Hover-Effekte ohne Sprite-Images.

Buttons (sl-block-sidebar h3, sl-dashboard-panel-head) vereinheitlicht: einfacher 3-Stop-Verlauf, opacity:.8-Hover statt separater Hover-Verlauf.

Modul-Head-Body auf CSS Grid umgestellt (25/75 Split) für stabiles Title/Searchbox-Layout; Searchbox mit Inline-Flex und fester min-height.

Chore: config/local.php — base_fingerprint nach Block-System-Refactor aktualisiert
Автор: Eduard Laas | Дата: 14:16 22.04.2026

Fingerprint spiegelt den aktuellen Stand nach Logger-Integration, Template-Engine- Fixes, Block-Refactoring und neuen Fragment-Templates wider.

Feature: templates — neue Block-Fragments und Partials für Frontend-Themes
Автор: Eduard Laas | Дата: 14:13 22.04.2026

Erstellt fehlende Block-Templates für alle Frontend-Themes (default, lite, simple). Templates sind identisch über alle Themes und eliminieren die block-*-Warnungen im Log.

Core changes:

  1. Fragments (×3 Themes):
  2. block-list-item.html: <li>-Wrapper für link.html (news, files, pages, faq, jokes)
  3. block-center-link.html: zentrierter Link mit sl-center-Klasse (auto_links)
  4. block-login-form.html: Login-Formular mit CAPTCHA + Netzwerk-Row (login, user_info)
  5. block-network-row.html: Soziale-Login-Zeile (login, user_info)
  6. block-search-form.html: Suchformular (search)
  7. block-menu.html: <nav>-Wrapper für DB-Content (menu)
  8. admin-block-links.html: Admin/Logout-Links + Block-HTML (adminblock)
  9. Partials (×3 Themes):
  10. block-sidebar.html: Sidebar-Block-Wrapper mit Toggle-Control (adminblock)
  11. block-user-info.html: Konsolidiertes User-Info-Partial (eingeloggt + Gast)

Benefits: - Alle block-*-Warnungen im error_php.log beseitigt - Einheitliche Template-Struktur über alle Frontend-Themes - block-user-info.html vereint 7 frühere Fragment-Aufrufe in einem Partial

Technical notes: - Templates identisch in default/lite/simple — Theme-spezifisches CSS via Klassen - block-user-info.html nutzt is_user-Flag für eingeloggt/Gast-Verzweigung im Template - Neue sl-*-Klassen (block-login, block-flags, block-menu) in new.css zu ergänzen

Refactor: blocks — atomare Fragment-Nutzung; block-spezifische Templates entfernt
Автор: Eduard Laas | Дата: 14:13 22.04.2026

Alle Block-PHP-Dateien wurden refaktoriert: statt fehlender block-*-Fragment-Templates nutzen sie jetzt vorhandene atomare Fragmente (link, image, table, table-row) oder übergeben strukturierte Datenobjekte an Partials.

Core changes:

  1. Einfache Blöcke → table.html + table-row.html (center, center_forum, center_media, center_plus, forum, links):

  2. Spalten-Daten über cells[]-Array übergeben, HTML-Strings in PHP entfernt
  3. head_html/body_html-Strings durch headers[]-Array + table.html ersetzt
  4. Banner-Blöcke (banner_random, stat):
  5. banner_random: block-banner-random → link.html mit img_src
  6. stat: block-stat-banners → image.html (Counter) + link.html ×2 (Banner)
  7. img.php:
  8. $img_html HTML-Variable entfernt; img_src wird als leerer String übergeben wenn nicht das erste Bild — link.html rendert <img> nur bei gesetztem img_src

  9. menu.php:
  10. DB-Inhalt ($content) wird jetzt als Variable an block-menu-Template übergeben
  11. user_info.php:
  12. Alle separaten block-user-*-Fragment-Aufrufe durch $data-Array + getHtmlPart() für block-user-info Partial ersetzt

Benefits: - Keine fehlenden Template-Warnungen mehr für block-*-Fragmente - Kein HTML/CSS in PHP-Dateien — nur noch Daten-Arrays - Wiederverwendung vorhandener atomarer Fragmente statt Duplizierung

Technical notes: - table-row.html: Stat-Spalten nutzen cell.class='fl-col-stat' (kein is_forum_stat) - Forum-Sidebar: Poster als primary_text/secondary_text (Klartext), kein user_info() HTML - user_info.php: getHtmlPart('block-user-info') statt getHtmlFrag (Partial, nicht Fragment)

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

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

Технологии

PHPMySQLHTML 5CSS 3jQueryjQuery UI

Контакты

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

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