Enhanced the modules admin panel with type-based filtering and automatic detection of new or removed modules in the filesystem.
Core changes:
- Module type filter (modules.php):
Added dropdown filter to show All/Users/Admins module types
- Filter persists in navigation links
Modules now sorted by type (Admin=0, User=1) then alphabetically
- Uses uksort with natural case-insensitive comparison
- Added Bootstrap Icons for module type indication (tools/people-fill)
- Added database status icons (bi-database-fill-gear, fill-dash, fill-add)
- New/Deleted module notifications (modules.php):
- Detect and display newly found modules not yet in config
Detect and notify about modules removed from filesystem
- Automatically cleans up config for removed modules
- Language constants (language/*.php):
- Added _MODULES_NEW for new module detection messages
Added _MODULES_DELETED for removed module notification
- Translations in all 6 languages (de, en, fr, pl, ru, uk)
Benefits:
- Easier module management with type-based filtering
- Instant visibility of filesystem changes via notifications
- Better visual distinction between admin and user modules
Translated all 16 remaining admin module documentation files from Russian to German, English, Ukrainian, French, and Polish (80 files total).
Core changes:
- Module info translations (admin/info/):
favorites, fields, groups, lang, messages, modules
- Complete documentation for module management and configuration
newsletter, privat, ratings, referers, replace
- User-facing feature documentation in all 5 target languages
rss, security, statistic, template, uploads
- Technical documentation with preserved code examples and BBCode formatting
Benefits:
- Full multilingual admin documentation coverage for all 23 modules
- Consistent BBCode formatting and HTML entities across all translations
- Technical terms, file paths, and code examples preserved unchanged
Technical notes:
- groups module uses -po.html suffix for Polish (legacy naming)
- uploads module uses -pL.html suffix for Polish (legacy naming)
- All translations based on Russian (-ru.html) source templates
Added development tooling configuration and testing documentation.
Core changes:
- PHP CS Fixer configuration (.php-cs-fixer.dist.php):
- Code style rules for automated formatting
- PSR-12 compatible configuration
- Test documentation (docs/TESTS.md):
- PHPUnit testing guidelines
- Test structure documentation
Benefits:
- Consistent code formatting across project
- Clear testing guidelines for contributors
Updated all documentation to reflect current project status (~65% complete) and standardized module info file naming to ISO language codes.
Core changes:
- Documentation updates (*.md):
- Updated dates to February 2026 across all docs
- Fixed progress status from 50% to ~65%
- Listed all 23 modernized admin modules
- Translated German text to Russian in .rules files
- Module info files (modules/*/admin/info/):
- Renamed english.html → en.html
- Renamed german.html → de.html
- Renamed french.html → fr.html
- Renamed polish.html → pl.html
- Renamed russian.html → ru.html
Renamed ukrainian.html → uk.html
- Applied to: auto_links, clients, contact modules
- Admin modules and config (admin/, config/):
- Updated admin/index.php structure
- Updated language files (de, en, fr, pl, ru, uk)
- Reorganized config/modules.php
Benefits:
- Consistent ISO 639-1 language code naming
- Accurate documentation reflecting real progress
- Better maintainability and structure
Technical notes:
- No breaking changes
- Language code naming follows ISO 639-1 standard
- Documentation now in sync with codebase state
Move module configuration/visibility to config-based sources and update admin permissions to use module names, aligning admin assets/tests with the current module layout.
Core changes:
- Module config & access (core/system.php, core/user.php, index.php, admin/modules/*.php, setup/index.php):
Switch runtime module state to config modules
- Use $confmd instead of _modules reads
- Migrate admin module lists to name-based storage
- Update admin screens and block listing to use config modules
- Module/admin structure & assets (modules/, admin/info/, templates/admin/basic-changelog.html):
- Refresh admin info pages and module admin layouts
- Reorganize rss/sitemap/account/changelog admin assets
- Tests (tests/ModuleStructureTest.php):
- Drop obsolete links.php requirement
Benefits:
- Consistent, file-based module configuration
- Admin permissions now human-readable and stable
- Tests reflect current admin structure
Technical notes:
- config/modules.php is the single source of module metadata
- admins.modules stores module names
- No runtime dependency on _modules (migration in setup only)
Module navigation links are now defined centrally in config/modules.php instead of scattered across individual admin/links.php files per module.
Core changes:
- Module configuration (config/modules.php):
- Added 'type' field to distinguish module categories
- Updated language constants for consistency
- Adjusted module active states and visibility settings
- Admin navigation (admin/index.php):
- Refactored menu building to use centralized config
- Removed dependency on individual links.php files
- Removed files (modules/*/admin/links.php):
- Deleted 19 redundant links.php files from modules
- Navigation data now comes from central registry
Benefits:
- Single source of truth for module navigation
- Easier module management and configuration
- Reduced code duplication across modules
Technical notes:
- Backward compatible with existing module structure
- Module type field: 0 = core, 1 = optional
Moves module discovery and status management to config/modules.php and uses it to build admin menus and module settings. Adds editable language/icon metadata and keeps config synced with the filesystem.
Core changes:
- Module registry (admin/modules/modules.php, config/modules.php):
- Scan admin/custom modules into
$confmdand save config when changed - Replace DB-driven status/edit/update flows with config-backed values
- Admin UI (admin/index.php, admin/modules/config.php):
- Build admin menus from config for type 0/1 modules and load admin module paths via
BASE_DIR - Allow SVG logos in admin selection and show translated titles
- Config handling (core/system.php):
- Load module config early and normalize nested values on save
- Fix statistics log rotation path
Benefits:
- Single source of truth for module metadata
- Reduced DB coupling and fewer sync mismatches
- Clearer admin menu rendering
Technical notes:
config/modules.phpnow storeslang,img,type,side,top- Admin module actions now use
modidentifiers instead ofmid - Backward compatibility: DB module table is no longer authoritative
Updated copyright year to 2026 and minor configuration adjustments.
Core changes:
- Global configuration (config/global.php):
- Update copyright year: 2025 -> 2026
- Configuration value adjustments
- Main entry point (index.php):
- Code updates and improvements
- Search module (modules/search/index.php):
- Module updates
Technical notes:
- No breaking changes
- Backward compatible
Added translation constants for new SEO-related configuration options across all supported languages.
Core changes:
- Admin language files (admin/language/*.php):
- _KEY_SEP: Separate keywords with commas
- _LTITLE: Use long titles
- _ADESC: Automatic description generation
- _DLETTER: Maximum description characters
- _RSEP: URL separator
- Core language files (language/*.php):
- Minor translation updates and fixes
- News module language files (modules/news/language/*.php):
- Translation updates for consistency
Benefits:
- Complete localization for new SEO features
- Consistent translations across de, en, fr, pl, ru, uk
Technical notes:
- All 6 supported languages updated
- Constants follow existing naming convention