Последнии сообщения форума
Всего: 166 Коммитов в репозитории |
Отфильтровано: 166 Коммиты |
Страница: 1 / 17
Сегодня (03.02.2026)
Refactor: Remove module links.php files and centralize navigation
Module navigation links are now defined centrally in config/modules.php
instead of scattered across individual admin/links.php files per module.
Core changes:
1. Module configuration (config/modules.php):
• Added 'type' field to distinguish module categories
• Updated language constants for consistency
• Adjusted module active states and visibility settings
2. Admin navigation (admin/index.php):
• Refactored menu building to use centralized config
• Removed dependency on individual links.php files
3. 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
instead of scattered across individual admin/links.php files per module.
Core changes:
1. Module configuration (config/modules.php):
• Added 'type' field to distinguish module categories
• Updated language constants for consistency
• Adjusted module active states and visibility settings
2. Admin navigation (admin/index.php):
• Refactored menu building to use centralized config
• Removed dependency on individual links.php files
3. 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
Refactor: Centralize module registry in config
Moves module discovery and status management to
Core changes:
1. Module registry (admin/modules/modules.php, config/modules.php):
• Scan admin/custom modules into
• Replace DB-driven status/edit/update flows with config-backed values
2. 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
• Allow SVG logos in admin selection and show translated titles
3. 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:
•
• Admin module actions now use
• Backward compatibility: DB module table is no longer authoritative
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:
1. Module registry (admin/modules/modules.php, config/modules.php):
• Scan admin/custom modules into
$confmd and save config when changed• Replace DB-driven status/edit/update flows with config-backed values
2. 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
3. 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.php now stores lang, img, type, side, top• Admin module actions now use
mod identifiers instead of mid• Backward compatibility: DB module table is no longer authoritative
Вчера (02.02.2026)
Chore: Update copyright year and configuration
Updated copyright year to 2026 and minor configuration adjustments.
Core changes:
1. Global configuration (config/global.php):
• Update copyright year: 2025 -> 2026
• Configuration value adjustments
2. Main entry point (index.php):
• Code updates and improvements
3. Search module (modules/search/index.php):
• Module updates
Technical notes:
• No breaking changes
• Backward compatible
Core changes:
1. Global configuration (config/global.php):
• Update copyright year: 2025 -> 2026
• Configuration value adjustments
2. Main entry point (index.php):
• Code updates and improvements
3. Search module (modules/search/index.php):
• Module updates
Technical notes:
• No breaking changes
• Backward compatible
Refactor: Add new translation constants for SEO settings
Added translation constants for new SEO-related configuration
options across all supported languages.
Core changes:
1. 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
2. Core language files (language/*.php):
• Minor translation updates and fixes
3. 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
options across all supported languages.
Core changes:
1. 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
2. Core language files (language/*.php):
• Minor translation updates and fixes
3. 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
Chore: Update PHPStan and PHPUnit configuration
Updated static analysis and testing configuration for improved
code quality validation.
Core changes:
1. PHPStan configuration (phpstan.neon):
• Add ignore pattern for sprintf placeholder false positives
* Language constants resolved at runtime
2. PHPUnit configuration (phpunit.xml):
• Add Validation test suite alongside Unit tests
• Exclude bootstrap.php from test discovery
3. Git attributes (.gitattributes):
• Enforce LF line endings for PHP files
Benefits:
• Cleaner PHPStan output without false positives
• All validation tests run with composer quality
• Consistent line endings across platforms
Technical notes:
• PHPStan level 0 maintained
• PHPUnit 12 compatible configuration
code quality validation.
Core changes:
1. PHPStan configuration (phpstan.neon):
• Add ignore pattern for sprintf placeholder false positives
* Language constants resolved at runtime
2. PHPUnit configuration (phpunit.xml):
• Add Validation test suite alongside Unit tests
• Exclude bootstrap.php from test discovery
3. Git attributes (.gitattributes):
• Enforce LF line endings for PHP files
Benefits:
• Cleaner PHPStan output without false positives
• All validation tests run with composer quality
• Consistent line endings across platforms
Technical notes:
• PHPStan level 0 maintained
• PHPUnit 12 compatible configuration
Test: Add comprehensive validation test suite
New PHPUnit test suite for validating code quality, security,
and consistency across the SLAED CMS codebase.
Core changes:
1. BlockValidationTest.php:
• Validates block file syntax and naming
• Checks UTF-8 encoding compliance
2. ConfigValidationTest.php:
• Validates configuration file structure
• Checks for required config keys
3. InsertValidationTest.php:
• Validates INSERT queries have all required NOT NULL fields
• Parses SQL schema for field requirements
4. LanguageValidationTest.php:
• Validates sprintf placeholder syntax
• Checks translation completeness across locales
5. ModuleStructureTest.php:
• Validates module directory structure
• Checks for required files (index.php, language/)
6. PhpFileFormatTest.php:
• Validates UTF-8 encoding (no BOM)
• Line endings check (skipped, needs project-wide normalization)
7. SchemaUpdateValidationTest.php:
• Validates database migration files
• Checks SQL syntax
8. SecurityValidationTest.php:
• Detects eval() with user input
• Checks for SQL injection patterns
9. SetupFileWarningTest.php:
• Validates setup file warnings
10. TemplateValidationTest.php:
• Validates HTML template structure
• Checks conditional syntax
Benefits:
• Automated quality assurance
• Early bug detection
• Consistent code standards enforcement
Technical notes:
• PHPUnit 12 compatible
• 58 tests, 74 assertions
• Integrated with composer quality command
and consistency across the SLAED CMS codebase.
Core changes:
1. BlockValidationTest.php:
• Validates block file syntax and naming
• Checks UTF-8 encoding compliance
2. ConfigValidationTest.php:
• Validates configuration file structure
• Checks for required config keys
3. InsertValidationTest.php:
• Validates INSERT queries have all required NOT NULL fields
• Parses SQL schema for field requirements
4. LanguageValidationTest.php:
• Validates sprintf placeholder syntax
• Checks translation completeness across locales
5. ModuleStructureTest.php:
• Validates module directory structure
• Checks for required files (index.php, language/)
6. PhpFileFormatTest.php:
• Validates UTF-8 encoding (no BOM)
• Line endings check (skipped, needs project-wide normalization)
7. SchemaUpdateValidationTest.php:
• Validates database migration files
• Checks SQL syntax
8. SecurityValidationTest.php:
• Detects eval() with user input
• Checks for SQL injection patterns
9. SetupFileWarningTest.php:
• Validates setup file warnings
10. TemplateValidationTest.php:
• Validates HTML template structure
• Checks conditional syntax
Benefits:
• Automated quality assurance
• Early bug detection
• Consistent code standards enforcement
Technical notes:
• PHPUnit 12 compatible
• 58 tests, 74 assertions
• Integrated with composer quality command
Refactor: Rename language files to ISO 639-1 format
Continued migration of language file naming from verbose format
(lang-english.php) to ISO 639-1 codes (en.php) for consistency.
Core changes:
1. Module language directories renamed:
• modules/recommend/language/
• modules/rss_info/language/
• modules/search/language/
• modules/shop/admin/language/
• modules/shop/language/
• modules/users/language/
• modules/voting/admin/language/
• modules/whois/admin/language/
2. File naming changes:
• lang-english.php -> en.php
• lang-french.php -> fr.php
• lang-german.php -> de.php
• lang-polish.php -> pl.php
• lang-russian.php -> ru.php
• lang-ukrainian.php -> uk.php
Benefits:
• Consistent naming across all modules
• Shorter, standardized file names
• Aligns with ISO 639-1 language codes
Technical notes:
• File content unchanged
• Module loader updated to use new naming
(lang-english.php) to ISO 639-1 codes (en.php) for consistency.
Core changes:
1. Module language directories renamed:
• modules/recommend/language/
• modules/rss_info/language/
• modules/search/language/
• modules/shop/admin/language/
• modules/shop/language/
• modules/users/language/
• modules/voting/admin/language/
• modules/whois/admin/language/
2. File naming changes:
• lang-english.php -> en.php
• lang-french.php -> fr.php
• lang-german.php -> de.php
• lang-polish.php -> pl.php
• lang-russian.php -> ru.php
• lang-ukrainian.php -> uk.php
Benefits:
• Consistent naming across all modules
• Shorter, standardized file names
• Aligns with ISO 639-1 language codes
Technical notes:
• File content unchanged
• Module loader updated to use new naming
Fix: Correct sprintf placeholders in language files
Fixed malformed sprintf placeholders that had spaces between %
and position number, causing formatting errors.
Core changes:
1. Account module language files:
• modules/account/language/pl.php
• modules/account/language/uk.php
* Fixed "% 1\$s" to "%1\$s" pattern
Benefits:
• sprintf() now works correctly with positional arguments
• Proper message formatting in Polish and Ukrainian locales
Technical notes:
• Space between % and position number is invalid
• PHPStan validation now passes for these files
and position number, causing formatting errors.
Core changes:
1. Account module language files:
• modules/account/language/pl.php
• modules/account/language/uk.php
* Fixed "% 1\$s" to "%1\$s" pattern
Benefits:
• sprintf() now works correctly with positional arguments
• Proper message formatting in Polish and Ukrainian locales
Technical notes:
• Space between % and position number is invalid
• PHPStan validation now passes for these files
Fix: Convert Windows-1251 files to UTF-8 encoding
Converted 27 files from Windows-1251 to UTF-8 encoding for
consistency across the codebase and proper character display.
Core changes:
1. Block files (blocks/*.php):
• block-center.php, block-center_forum.php, block-center_media.php
• block-files.php, block-forum.php, block-ipb_center_forum.php
• block-search.php
2. Core files (core/*.php):
• geo_ip.php
3. Admin links files (modules/*/admin/links.php):
• auto_links, changelog, clients, contact, content
• faq, files, forum, help, jokes, links, media
• money, news, order, pages, shop, whois
4. Module files:
• modules/clients/index.php
Benefits:
• Consistent UTF-8 encoding across project
• Proper Cyrillic character display
• Eliminates encoding-related bugs
Technical notes:
• Converted using iconv from WINDOWS-1251 to UTF-8
• No content changes, only encoding conversion
consistency across the codebase and proper character display.
Core changes:
1. Block files (blocks/*.php):
• block-center.php, block-center_forum.php, block-center_media.php
• block-files.php, block-forum.php, block-ipb_center_forum.php
• block-search.php
2. Core files (core/*.php):
• geo_ip.php
3. Admin links files (modules/*/admin/links.php):
• auto_links, changelog, clients, contact, content
• faq, files, forum, help, jokes, links, media
• money, news, order, pages, shop, whois
4. Module files:
• modules/clients/index.php
Benefits:
• Consistent UTF-8 encoding across project
• Proper Cyrillic character display
• Eliminates encoding-related bugs
Technical notes:
• Converted using iconv from WINDOWS-1251 to UTF-8
• No content changes, only encoding conversion
Fix: Replace eval() with str_replace() in billing template
Security improvement: removed eval() usage that processed template
variables, replacing it with safe str_replace() function.
Core changes:
1. Billing function (modules/money/admin/index.php):
• Remove eval() template processing
• Use str_replace() with explicit variable mapping
* $charset, $theme, $title, $site_logo
* $sitename, $autor, $infos, $num
* $date, $menge, $kurs, $sum
Benefits:
• Eliminates code injection vulnerability
• Explicit variable substitution is more maintainable
• No functional change to template output
Technical notes:
• Template format unchanged (billing.html)
• All template variables mapped explicitly
variables, replacing it with safe str_replace() function.
Core changes:
1. Billing function (modules/money/admin/index.php):
• Remove eval() template processing
• Use str_replace() with explicit variable mapping
* $charset, $theme, $title, $site_logo
* $sitename, $autor, $infos, $num
* $date, $menge, $kurs, $sum
Benefits:
• Eliminates code injection vulnerability
• Explicit variable substitution is more maintainable
• No functional change to template output
Technical notes:
• Template format unchanged (billing.html)
• All template variables mapped explicitly





