Журнал изменений
Registration and content creation were failing due to MySQL strict mode requiring all NOT NULL fields without DEFAULT values to be specified.
Core changes:
- User registration (modules/account/index.php):
Add user_block, user_warnings, user_field, user_network to INSERT
- Email activation registration
- Social network registration
- Admin user creation (admin/index.php):
- Add user_block, user_warnings, user_field to admin INSERT
- Help module (modules/help/admin/index.php):
- Add field column to help INSERT
- News module (modules/news/index.php):
- Add associated column to news INSERT
- Database schema (setup/sql/table*.sql):
- Use CREATE TABLE IF NOT EXISTS for idempotent migrations
Benefits:
- Registration now works with MySQL strict mode
- Consistent INSERT queries across modules
- Idempotent database migrations
Technical notes:
- All new fields initialized with empty strings
- Compatible with existing database schema
Improve code formatting and template structure in the lite theme for better readability and maintainability.
Core changes:
- Template files (templates/lite/):
- index.php: Normalize indentation to spaces
- login.html: Update login form template
- login-logged.html: Update logged-in state template
- login-without.html: Update guest state template
Benefits:
- Consistent code formatting
- Improved template readability
- Better maintainability
Technical notes:
- No functional changes
- Indentation standardized to 4 spaces
Clean up obsolete image module files that are no longer needed.
Core changes:
- Removed files (modules/image/):
- .htaccess
- index.php
Benefits:
- Cleaner module structure
- Remove unused code from repository
Technical notes:
- Image handling now managed elsewhere in the system
Improve template conditional rendering API by using a more descriptive key name that clearly indicates the purpose of boolean flags in templates.
Core changes:
- Template engine (core/template.php):
- Rename array key 'flag' to 'if_flag'
- Maintain full backward compatibility with existing templates
- Documentation (docs/TEMPLATES.md):
- Update all code examples to use new 'if_flag' key
- Clarify conditional rendering usage
Benefits:
- More intuitive and self-documenting API
- Clear distinction between variables and conditional flags
- Consistent naming convention with 'if:' template syntax
Technical notes:
- No breaking changes to template syntax
- Only affects PHP-side array key naming
Standardize language file naming across all modules using ISO 639-1 codes for better internationalization support and consistency.
Core changes:
- Language file renaming (all modules):
- lang-english.php → en.php
- lang-german.php → de.php
- lang-french.php → fr.php
- lang-russian.php → ru.php
- lang-ukrainian.php → uk.php
- lang-polish.php → pl.php
- Affected modules:
- account, auto_links, changelog, clients, contact
- faq, files, forum, help, jokes
- links, media, money, news, order, pages
Benefits:
- ISO 639-1 standard compliance
- Shorter, cleaner filenames
- Consistent naming convention across codebase
Technical notes:
- Both admin and frontend language files updated
- No content changes, only file renaming
Remove spaces from conditional template tags for consistency with actual template parser behavior.
Core changes:
- Template syntax (docs/TEMPLATES.md):
- Change {% if FLAG %} to {%if FLAG%}
- Change {% else %} to {%else%}
- Change {% endif %} to {%endif%}
- Change {% elseif %} to {%elseif%}
- Updated all 6 practical examples
Benefits:
- Consistent syntax across documentation and code
- Matches actual template parser implementation
Add new 📚 Documentation section with links to all project documentation files including the new TEMPLATES.md guide.
Core changes:
- Documentation index (README.md):
- Add table with all documentation files
- Link to TEMPLATES.md, CONTRIBUTING.md, UPGRADING.md, SECURITY.md, CODE_OF_CONDUCT.md
- Brief descriptions for each document
Benefits:
- Better discoverability of project documentation
- Centralized documentation index
- Easy navigation for contributors and users
Implements {% if FLAG %} ... {% else %} ... {% endif %} conditional blocks for templates, enabling dynamic content display based on flags passed from PHP code.
Core changes:
- Template conditional rendering (core/template.php):
Add setTemplateIf() function for processing conditional blocks
- Supports nested IF blocks
- Boolean normalization for string 'true'/'false' values
- Undefined flags default to false
- Pure string-based parsing (no eval)
- Update setTemplateBasic() to support 'if_flag' parameter
- Update setTemplateBlock() to support 'if_flag' parameter
- Fix typo in comment header
Benefits:
- Enables dynamic content display (login/logout, admin links, etc.)
- Safe template conditionals without eval()
- Consistent flag handling across template functions
- Improved code documentation
Technical notes:
- Flags must match pattern [a-zA-Z0-9_]+
- No support for elseif, logical operators, or comparisons
- Performance optimized with early return for templates without {%
Complete overhaul of project documentation with consistent formatting, version information, and GitHub alert syntax for better readability.
Core changes:
All documentation files updated with headers (CODE_OF_CONDUCT.md, CONTRIBUTING.md, README.md, SECURITY.md, UPGRADING.md):
- Added "Last updated: January 2026" headers
- Added copyright footers
- Consistent formatting throughout
Template documentation created (docs/TEMPLATES.md):
- Main layout template system (index.html)
- Custom templates for home/modules/categories
- Layout variables ({%HEAD%}, {%MODULE%}, {%BLOCKS%})
- Conditional rendering with {% if %} syntax
- 6 practical examples with PHP code
- Security & performance best practices
- Migration guide from legacy tpl_* functions
README.md enhanced:
- Detailed modernization status (12 admin modules listed)
- Version history table with PHP compatibility
- Security statistics (2106+ SQL, 269+ input points)
UPGRADING.md expanded:
- Migration checklist for custom modules
- Removed/renamed files documentation
- Breaking changes with code examples
SECURITY.md improved:
- Modules secured table
- Deprecated functions table
- Known issues for 6.2.x
Benefits:
- Consistent documentation style across all files
- GitHub alerts for important information
- Clear upgrade path for contributors
- Comprehensive template system documentation
Technical notes:
- All docs use GitHub alert syntax ([!NOTE], [!TIP], etc.)
- Version 6.3.0 development status: 50% complete
- 6 supported languages documented: EN, FR, DE, PL, RU, UA