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

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

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

Всего: 500 Доступных коммитов | Отфильтровано: 500 Коммиты | Страница: 48 / 50
28.01.2026
Chore: Update copyright year and add commit template
Автор: Eduard Laas | Дата: 15:36 28.01.2026

Focus: ops

Summary

Updates copyright year to 2026 and adds standardized commit message template.

Changes

What

  • Update copyright year in modules.php to 2026
  • Add .gitmessage template for consistent commit formatting

Why

  • Keep copyright notices current
  • Standardize commit message format across team

Test

  • N/A - metadata changes only

Impact

For Admins / DevOps

  • None

For Developers

  • Use .gitmessage as template: git config commit.template .gitmessage

Breaking Changes

  • None

Upgrade

  • No action required
Refactor: Rename language icons to ISO 639-1 codes
Автор: Eduard Laas | Дата: 15:35 28.01.2026

Focus: UX

Summary

Standardizes language icon filenames using ISO 639-1 two-letter codes for consistency and internationalization.

Changes

What

  • Rename language icons from full names to ISO codes (e.g., english_mini.png → en_mini.png)
  • Applied to admin, default, and lite templates

Why

  • Align with international standards (ISO 639-1)
  • Simplify language detection logic
  • Enable consistent naming across all templates

Test

  • Visual inspection of language switcher in all templates

Impact

For Admins / DevOps

  • None - purely cosmetic change

For Developers

  • Update any hardcoded references to old icon names
  • New naming: de, en, fr, pl, ru, uk

Breaking Changes

  • Language icon filenames changed - update template references if needed

Upgrade

  • No action required if using dynamic language detection
Setup: Add PHPStan and PHPUnit testing infrastructure
Автор: Eduard Laas | Дата: 15:24 28.01.2026

Focus: stability

Summary

Adds static analysis and unit testing tools to improve code quality and catch bugs early.

Changes

What

  • Add PHPStan for static code analysis (level 0)
  • Add PHPUnit 12 for unit testing
  • Create test directory structure with example tests
  • Update .gitignore for test artifacts

Why

  • Enable automated code quality checks
  • Establish foundation for test-driven development
  • Catch type errors and bugs before runtime

Test

  • PHPStan: php vendor/bin/phpstan analyse (81 issues found at level 0)
  • PHPUnit: php vendor/bin/phpunit (3 tests passing)

Impact

For Admins / DevOps

  • New dev dependencies: phpstan/phpstan, phpunit/phpunit
  • Run composer install to get testing tools

For Developers

  • Use php vendor/bin/phpstan analyse to check code
  • Use php vendor/bin/phpunit to run tests
  • Add tests in tests/Unit/ directory

Breaking Changes

  • None

Upgrade

  • Run composer install --dev to install testing tools
30.12.2025
Refactor: Migrate admin panel from database module IDs to config-based names
Автор: Eduard Laas | Дата: 16:09 30.12.2025

This commit completes the module system migration by updating the admin panel and admin management to use module names instead of database IDs, aligning with the new config-based module architecture.

admin/index.php - Admin panel module loading:

  1. Panel sidebar (panelblock function): - Replace: SELECT title, active FROM _modules query - Use: getModules() iterator for module enumeration - Direct module name access eliminates database dependency

  2. Panel navigation (panel function): - Replace: SELECT title, active FROM _modules query - Use: getModules() iterator for building navigation - Consistent with panelblock implementation

  3. Module loader refactoring: - System modules: Use BASE_DIR constant for absolute paths - Change: include() → require_once for better error handling - Custom modules: Remove database lookup for module existence - Direct filesystem check: file_exists(modules/$name/admin/index.php) - Clean up: Remove commented experimental code - Code formatting: Consistent indentation and spacing

admin/modules/admins.php - Admin permissions management:

  1. Module list generation (add function): - Replace: SELECT mid, title FROM _modules query - Use: getModules() iterator to enumerate available modules - Change checkbox values: mid (database ID) → title (module name) - Update permission check: Compare with module name instead of ID - Storage format: Comma-separated names instead of IDs

  2. Permission save handler (save function): - Parameter type change: 'amodules[]', 'num' → 'amodules[]', 'var' - Accept module names (strings) instead of numeric IDs - Implode array to comma-separated string of names - Database stores: "news,pages,users" instead of "1,5,8"

Benefits: - No database queries for module enumeration (performance gain) - Module permissions portable across installations - Human-readable permission strings for debugging - Eliminates mid/title mismatch issues during migrations - Consistent with config-based module architecture

Technical notes: - Admin permissions stored as module name CSV in database - Module existence validated by filesystem, not database - getModules() provides consistent iteration interface - Backward compatibility maintained for existing installs

Files changed: 2 files Impact: Admin panel, module permissions, panel navigation

29.12.2025
Cleanup: Remove legacy code and fix setConfigFile calls
Автор: Eduard Laas | Дата: 12:34 29.12.2025

admin/modules/modules.php: - Remove commented debug line (migrateModulesConfig call) - Delete legacy database-based module scanning code (32 lines) - Remove obsolete module sync logic from old system - Clean up empty lines for better readability

admin/modules/newsletter.php: - Fix setConfigFile parameter order: (file, name, base, update) - Align with refactored function signature

Refactor: Migrate module system from database to configuration files
Автор: Eduard Laas | Дата: 12:30 29.12.2025

This commit represents a major architectural change in SLAED CMS, moving module management from database storage to file-based configuration for better performance, portability, and version control integration.

Core changes:

  1. Module configuration storage (config/modules.php): - Rename field: 'inmenu' → 'menu' for clarity - Store all module settings: active, view, menu, group, side, top - Configuration now version-controlled and portable - 26 modules migrated with existing settings preserved

  2. New module management functions (core/system.php): - Add getModules($title = null): Iterator-style module reader

 * Returns array: [title, active, view, menu, group, side, top]
 * Static iterator for row-by-row processing
 * Single module lookup when title provided
  • Load modules.php configuration on bootstrap
  • Enhance setConfigFile(): array_replace_recursive for deep merging
  1. Module synchronization utility (core/admin.php): - Add updateModulesConfig(): Sync config with filesystem

 * Scan modules/ directory for actual modules
 * Add new modules with default settings
 * Preserve existing module configurations
 * Remove entries for deleted modules
 * Natural case-insensitive sorting
  1. Admin module management refactor (admin/modules/modules.php): - Remove temporary migration function migrateModulesDbToConfig() - Replace database operations with config file operations - Update all functions to use config-based storage:

 modules():
 - Call updateModulesConfig() to sync filesystem
 - Read modules via getModules() iterator
 - Comment out legacy directory scanning code
 edit():
 - Parameter change: 'mid' (DB ID) → 'mod' (module name)
 - Load settings from config instead of database
 - Field renames: mod_group→group, blocks_m→side, blocks_mc→top
 - Display module status in edit form
 status():
 - Update module active state in config file
 - Use setConfigFile() instead of SQL UPDATE
 save():
 - Persist all module settings to config file
 - Conditional group assignment (only for view=1)
 - Parameter renames throughout: inmenu→menu, mod_group→group
  1. Setup/upgrade system (setup/index.php): - Sync setConfigFile() implementation with core - Add recursive normalization for nested arrays - Fix parameter order in setConfigFile() calls - Add update6_3 migration:

 * Read all modules from database _modules table
 * Generate initial config/modules.php
 * Rename inmenu→menu during migration

Benefits: - No database queries for module configuration (performance) - Module settings in version control (auditability) - Easier backup and restore (portability) - Simpler debugging (readable PHP arrays) - Atomic updates via setConfigFile() with file locking

Technical details: - Maintains backward compatibility during upgrade - Config file auto-regenerates from filesystem scan - Preserves all existing module settings - Natural sorting ensures consistent file ordering - Deep merge allows partial config updates

Files changed: 5 files, ~250 lines modified Database impact: Replaces _modules table reads/writes with config file I/O

23.12.2025
Setup: Add generated module configuration file
Автор: Eduard Laas | Дата: 15:22 23.12.2025
  • Create config/modules.php with all module settings
  • Migrate module data from database to configuration
  • Include settings for 26 modules: active, view, inmenu, group, side, top
  • Generated by migrateModulesDbToConfig() function
Refactor: Migrate SEO config and improve code formatting
Автор: Eduard Laas | Дата: 15:21 23.12.2025

Core changes: - Merge config/config_seo.php into core/system.php * Move $confse SEO configuration array inline * Remove separate config_seo.php file * Consolidate configuration loading

  • Enhance setConfigFile() function in core/system.php * Add recursive normalization for array values * Convert booleans to string '0'/'1' * Handle floats, integers, and null values * Add copyright header to generated files * Improve type safety and consistency

  • Add module migration utility in admin/modules/modules.php * Create migrateModulesDbToConfig() function * Migrate module settings from database to config file * Extract: active, view, inmenu, group, side, top fields * Generate config/modules.php via setConfigFile()

Code formatting: - core/access.php: Convert tabs to spaces, update copyright to 2026 - core/security.php: Fix indentation, add trailing newline - modules/news/index.php: Reformat code structure

Configuration: - config/global.php: Regenerate sitekey

Files changed: 7 modified, 1 deleted

22.12.2025
Docs: update README content
Автор: Eduard Laas | Дата: 14:32 22.12.2025
Setup/config: update config loaders and setup entrypoint
Автор: Eduard Laas | Дата: 14:29 22.12.2025

Всего: 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
Идеи и предложения
Обратная связь