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

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

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

Всего: 500 Доступных коммитов | Отфильтровано: 500 Коммиты | Страница: 9 / 50
22.04.2026
Refactor: core — Logger-Integration + Template-Engine-Verbesserungen
Автор: Eduard Laas | Дата: 14:12 22.04.2026

Ersetzt verteilte error_log()-Aufrufe in Template, System und Security durch Logger::addX()-Methoden. Erweitert gleichzeitig die Template-Engine um Dot-Notation in for-Schleifen und not-Syntax in if-Bedingungen.

Core changes:

  1. Template-Engine (core/classes/template.php):
  2. Logger-Integration: warnTemplate() nutzt Logger::addPhp() statt direktem JSON-Write
  3. filterFor: Iterable-Regex erweitert auf Dot-Pfade ({% for item in section.items %})
  4. parseIfCondition: not var als Alias für !var ({% if not is_plain %})
  5. System-Core (core/system.php):
  6. Logger via require_once eingebunden
  7. Backup-Fehler (MySQL-Version, Verzeichnis, Datei) → Logger::addSql/addFile
  8. adminblock() nutzt block-sidebar statt sidebar-block (Partial-Umbenennung)
  9. addErrorFile() vereinfacht auf Logger::addFile()
  10. Security (core/security.php):
  11. Inline-Logging-Closures ($ls, $lbound, $lctx, $lreq, $lmem) entfernt
  12. HTTP-Error-Handler für direkten GET-Parameter ?error=NNN ergänzt
  13. Logging-Aufrufe nutzen Logger-Klasse
  14. Monitor-Modul (admin/modules/monitor.php):
  15. DB-Health-Fehler → Logger::addSql() statt error_log()

Benefits: - Konsistentes Logging-Format über alle Core-Subsysteme - Template-Engine unterstützt verschachtelte Datenstrukturen in Schleifen - not-Syntax löst bestehende checkbox.html-Fehler bei älteren Templates

Technical notes: - Dot-Notation im for-Iterable erfordert PHP-Array-Zugriff via explode('.')/shift - Backward-compatible: class_exists('Logger')-Checks in allen Aufrufern

Feature: core/classes/logger.php — zentrale Logger-Klasse
Автор: Eduard Laas | Дата: 14:11 22.04.2026

Einführung einer zentralen Logger-Klasse, die strukturiertes JSON-Logging für PHP-, SQL- und Datei-Ereignisse bereitstellt. Löst das bisher verteilte error_log()-Muster durch einen einheitlichen, konfigurierbaren Mechanismus ab.

Core changes:

  1. Logger-Klasse (core/classes/logger.php):
  2. Statische Methoden addPhp(), addSql(), addFile() für Kategorie-spezifisches Logging
  3. JSON-Zeilenformat mit Fingerprint (SHA-1), Timestamp, Level, Request-Kontext
  4. Log-Rotation via Komprimierung bei Überschreiten des konfigurierten Grenzwerts
  5. Rekursionsschutz (static $running) verhindert Endlosschleifen
  6. Sicherer Fallback auf error_log() bei fehlgeschlagenem Schreibzugriff

Benefits: - Konsistente, maschinenlesbare Log-Ausgabe über alle Core-Subsysteme - Zentrale Verwaltung: Format, Rotation und Pfade an einem Ort - Kategorisierung ermöglicht gezielte Log-Auswertung (php / sql / file)

Technical notes: - Log-Datei: LOGS_DIR/error_php.log (php), error_sql.log (sql), error_file.log (file) - Fingerprint-Deduplication via SHA-1(Kategorie+Typ+normalisierte Nachricht) - Backward-compatible: alle Aufrufer prüfen class_exists('Logger') vor Nutzung

21.04.2026
Chore: update base_fingerprint after admin CSS sizing update
Автор: Eduard Laas | Дата: 22:38 21.04.2026

Regenerate config/local.php base_fingerprint to reflect the coordinated admin CSS sizing pass (larger sidebar, 14px base font, 28px element height).

Core changes:

  1. config/local.php:
  2. _meta.base_fingerprint regenerated from 9bac3d77… to f005dfd5…

Technical notes: - No functional changes; fingerprint tracks template/asset state only

Style: admin/css — größere Sidebar, 14px Basisschrift, 28px Elementhöhe
Автор: Eduard Laas | Дата: 22:37 21.04.2026

Koordinierte Größenanpassung der Admin-Oberfläche über drei CSS-Dateien: Sidebar und Wrapper werden breiter, Basisschrift von 13px auf 14px angehoben, Button- und Input-Höhen auf einheitliche 28px normalisiert.

Core changes:

  1. theme.css:
  2. body/select/input/textarea/button: Schriftgröße 13px → 14px
  3. input/textarea/select: min-height 18px → 28px
  4. .wrapper: max-width 1280px → 1440px
  5. .sl-admin-header, .sl-admin-main: Grid-Spalte 250px → 300px
  6. .container: padding-left 250px → 300px; .leftside margin -250px → -300px
  7. .leftside .block: width 225px → 275px
  8. .bchead + .bchead b: height/line-height 29px → 28px
  9. .toolbar li: line-height 29px → 28px
  10. system.css:
  11. .CodeMirror, .CodeMirror-hints: font 12px Verdana → 14px Verdana
  12. .sl-but und Varianten: min-height 29px → 28px, line-height 27px → 26px
  13. input.sl-but-*: height 29px → 28px
  14. new.css:
  15. .sl-sidebar-block: width 225px → 275px
  16. .sl-sidebar-block-content: margin 11px → 8px, padding 6px 0 4px → 8px 0
  17. .sl-sidebar-count-row: gap 8px → 4px
  18. .sl-sidebar-count-label/.sl-sidebar-count-value: padding 2px 4px → 4px
  19. .sl-dashboard-panel-head + b: height/line-height 29px → 28px

Benefits: - Breiterer Inhaltsbereich durch 300px Sidebar und 1440px Wrapper - Einheitliche 28px-Höhe für Buttons, Inputs und Panel-Header - Größere Lesbarkeit durch 14px Basisschrift (inkl. CodeMirror)

Technical notes: - Keine funktionalen Änderungen, reines Styling-Update - Rückwärtskompatibel: alle bestehenden Klassen bleiben erhalten

Refactor: admin/modules/database — submit-Buttons von input- auf button-Fragment migriert
Автор: Eduard Laas | Дата: 17:08 21.04.2026

Die zwei Submit-Buttons im Datenbank-Modul nutzen jetzt getHtmlFrag('button') statt getHtmlFrag('input') und übergeben name_attr direkt — konsistent mit dem erweiterten button-Fragment-Vertrag.

Core changes:

  1. dump() — database.php:
  2. getHtmlFrag('input', ['itype' => 'submit', 'name_attr' => ..., 'input_attr' => 'class="..."']) → getHtmlFrag('button', ['button_type' => 'submit', 'name_attr' => ..., 'class' => '...'])

  3. Betrifft _DB_PARSE (sl-but-green) und _EXECUTE (sl-but-blue)

Benefits: - Einheitlicher button-Fragment-Aufruf über alle Module - name_attr als expliziter Parameter statt über input_attr-String

Technical notes: - button.html rendert <input type="submit"> — kein Unterschied im HTML-Output

Refactor: admin templates — sl-box-pad/sl-box-content Nesting entfernt; button name_attr; session-summary sl-but
Автор: Eduard Laas | Дата: 17:08 21.04.2026

Überflüssige Wrapper-Divs (.sl-box-pad, .sl-box-content) aus box.html, table.html, module-head.html und preview.html entfernt; button.html um name_attr erweitert; session-summary auf sl-but umgestellt.

Core changes:

  1. box.html / table.html / module-head.html / preview.html:
  2. .sl-box-pad und .sl-box-content Wrapper-Divs entfernt
  3. .sl-box bleibt als äußerer Container erhalten
  4. Inhalt rückt eine Ebene nach oben
  5. button.html:
  6. name="{{ name_attr }}" Attribut ergänzt (für submit-Buttons mit name)
  7. is_chlog_primary/is_chlog_secondary: sl-changelog-button-* Klassen durch sl-but-blue / sl-but ersetzt
  8. session-summary.html:
  9. Update-Button-Link: sl-session-button → sl-but (einheitliche Button-Klasse)

Benefits: - Weniger DOM-Tiefe ohne CSS-Auswirkungen - button.html abdeckt jetzt auch submit-Buttons mit name-Attribut - Konsistente Verwendung von sl-but statt fragment-spezifischen Aliases

Technical notes: - sl-box-pad und sl-box-content hatten keine eigenen CSS-Regeln — rein strukturelles Markup - Bestehende Aufrufer von box.html / table.html nicht betroffen

Style: admin/css — responsives Layout, Gradient-Hintergrund, Button-Refactor
Автор: Eduard Laas | Дата: 17:07 21.04.2026

Drei CSS-Dateien koordiniert überarbeitet: theme.css übernimmt das Seiten-Layout mit modernem Gradient und responsive Wrapper; system.css konsolidiert die Button-Stile auf inline-flex mit einheitlicher Höhe; new.css gibt die duplizierten Button-Regeln ab.

Core changes:

  1. theme.css:
  2. html: Gradient-Hintergrund (#8bc7dd → #c7e5f0 → #d9eef6) statt pagebg.jpg
  3. body: transparent, min-height 100vh; body:has(.slaenter) zentriert Login per CSS Grid
  4. .wrapper: responsive width: min(1280px, calc(100vw - 32px)), border + box-shadow statt PNG-Wraptop/Wrapfoot
  5. Neue sl-admin-* Layoutklassen: sl-admin-main (flex), sl-admin-sidebar, sl-admin-content, sl-admin-header, sl-admin-footer, sl-admin-brand, sl-admin-toolbar, sl-admin-language
  6. .slaenter-spezifisches Layout entfernt (Login läuft jetzt über body:has(.slaenter))
  7. system.css:
  8. .sl-but, .sl-but-blue, .sl-but-red, .sl-but-green, .sl-but-foot, .sl-but-back: inline-flex statt inline-block; min-height: 29px, padding: 0 12px statt feste height/line-height
  9. Legacy sl_but_* Alias-Klassen entfernt
  10. new.css:
  11. Duplizierte .sl-but / .sl-but-blue / .sl-but-red / .sl-but-green Regeln entfernt (jetzt nur in system.css)
  12. sl-div-item-full: CodeMirror/cm-editor/sl_code_editor ergänzt, min-width: 0 gesetzt

Benefits: - Login-Seite ohne PNG-Abhängigkeit, korrekt zentriert auf allen Viewports - Einheitliche Button-Höhe (29px) über alle Kontexte - Responsive Wrapper löst fixed 1094px ab

Technical notes: - body:has(.slaenter) setzt overflow: hidden — kein Scroll auf Login-Seite - sl-admin-main nutzt flex mit sl-admin-sidebar (flex: 0 0 auto) und sl-admin-content (flex: 1)

Refactor: admin layouts — semantische HTML-Struktur mit aside/main und sl-admin-* Klassen
Автор: Eduard Laas | Дата: 17:07 21.04.2026

Admin- und Login-Layout auf semantische HTML5-Elemente umgestellt und einheitliche sl-admin-* CSS-Klassen als strukturelle Marker eingeführt, um das Layout von den alten float-basierten lcolomn/rcolomn-Klassen zu lösen.

Core changes:

  1. admin.html:
  2. <meta name="viewport"> ergänzt
  3. .wrapper erhält zusätzlich sl-admin-shell
  4. .header erhält sl-admin-header; lcolomn/rcolomn durch sl-admin-brand / sl-admin-toolbar ersetzt
  5. Doppeltes .vsep + .container + float-Struktur durch sl-admin-main / <aside class="sl-admin-sidebar"> / <main class="sl-admin-content"> ersetzt
  6. .footer erhält sl-admin-footer
  7. .language erhält sl-admin-language
  8. bare.html (Login-Layout):
  9. Gleiche sl-admin-* Klassenergänzungen
  10. .wrapper zusätzlich sl-admin-login-shell
  11. .header → sl-admin-login-header

Benefits: - Semantische aside/main-Elemente für Accessibility und Lesbarkeit - sl-admin-* Marker als stabile CSS-Anker unabhängig von Legacy-Klassen - Viewport-Meta ermöglicht responsives Verhalten

Technical notes: - Alte Klassen (lcolomn, rcolomn, vsep, container) bleiben im HTML erhalten für Rückwärtskompatibilität - sl-admin-shell / sl-admin-sidebar / sl-admin-content sind neue CSS-Klassen (theme.css)

Style: admin/css — gradient headers (blau/grün/orange) + strukturelles CSS für neue Admin-Komponenten
Автор: Eduard Laas | Дата: 14:01 21.04.2026

Drei Dashboard-/Sidebar-Elemente erhalten CSS-Farbverläufe statt PNG-Sprites. Zusätzlich strukturelle CSS-Klassen für die neuen Grid-Komponenten eingeführt, die durch die Fragment-Migration benötigt werden.

Core changes:

  1. Gradient-Header (new.css):
  2. .sl-dashboard-panel-head: blauer Verlauf (ersetzt bchead.png)
  3. .sl-sidebar-block h3: grüner Verlauf (ersetzt leftblocktop.png + leftbdbtm.png)
  4. .sl-sidebar-block:has([data-sl-toggle-control="sl_block_3/4"]) h3: oranger Verlauf für "Новые" und "Ждут проверки"
  5. Strukturelle Grid-CSS (new.css):
  6. sl-sidebar-count-row / sl-sidebar-count-list / sl-sidebar-count-label / sl-sidebar-count-value
  7. sl-admin-block-links / sl-admin-block-link
  8. sl-session-line / sl-session-row / sl-session-name / sl-session-module / sl-session-* Hilfsklassen
  9. sl-tabs-content > .sl-tab-panel:first-child { display: block } — erster Tab sichtbar per Default

Benefits: - PNG-freie Darstellung für drei zentrale UI-Elemente - Orange-Kennzeichnung von Moderations-Blöcken per CSS :has() ohne HTML-Änderung - Strukturklassen ermöglichen konsistentes Grid-Layout in Sidebar-Blöcken

Technical notes: - border-radius + overflow:hidden auf .sl-sidebar-block ersetzt negative Margins auf h3 - Farbverlauf-Formel: hell oben → mittel → Knick bei 50% → leicht dunkler unten

Refactor: core/admin — migrate sidebar count blocks to sidebar-count-row fragment
Автор: Eduard Laas | Дата: 14:01 21.04.2026

Die "Новые"- und "Ждут проверки"-Sidebar-Blöcke wurden von der table-row/table-cells-Struktur auf das neue sidebar-count-row-Fragment umgestellt — konsistentes Rendering ohne Tabellen-Overhead.

Core changes:

  1. admininfo() — "Новые"-Block (core/admin.php):
  2. Alle Modul-Zähler (users, faq, files, links, news, pages, shop, whois usw.) von getHtmlFrag('table-row', [...table-cells...]) auf getHtmlFrag('sidebar-count-row', ['label_html', 'value_html']) umgestellt
  3. Wrapper von getHtmlFrag('table', [...]) auf getHtmlFrag('content-block', ['class' => 'sl-sidebar-count-list']) gewechselt
  4. admininfo() — "Ждут проверки"-Block (core/admin.php):
  5. Kommentare-Zeile analog migriert

Benefits: - Kein table-row/table-cells-Nesting mehr für einfache Label+Zahl-Paare - sidebar-count-row ist eigenständig styled und wiederverwendbar - PHP-Code klarer lesbar durch flache Fragment-Aufrufe

Technical notes: - sidebar-count-row erwartet label_html (HTML-String) und value_html (HTML-String) - sl-sidebar-count-list als Wrapper-Klasse für das Grid-Layout

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

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

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

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

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