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

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

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

Всего: 500 Доступных коммитов | Отфильтровано: 500 Коммиты | Страница: 22 / 50
12.03.2026
Refactor: add Batch W body-column unification to SQL migration scripts
Автор: Eduard Laas | Дата: 09:59 12.03.2026

Six tables are normalised to use a consistent body column name instead of the legacy table-specific names (infotext, prod_id→pid, text, content, questions). The rencol() stored procedure is fully idempotent, so the scripts are safe to re-run on already-migrated databases.

Core changes: - batch_migrate.sql: add Batch W (CALL rencol for all six tables) - table_update6_3.sql: add Batch W; update Batch U MODIFYs to new names (body replaces text/content/questions in column type definitions) - table_update6_3_finalize_local.sql: add rencol calls + updated MODIFYs for local-install finalizer path

Tables affected: {prefix}_clients_down infotext → body, prod_id → pid {prefix}_content text → body {prefix}_message content → body {prefix}_newsletter content → body {prefix}_privat content → body {prefix}_voting questions → body

Refactor: rename language/ directories to lang/ throughout codebase
Автор: Eduard Laas | Дата: 09:59 12.03.2026

All per-module and global language file directories have been renamed from language/ to lang/ for consistency with modern PHP conventions and to align with the new single-source multilingual architecture.

Core changes: - Delete all legacy language/ subdirectories (admin, modules, templates) - Add equivalent lang/ directories with identical file contents - core/access.php, core/security.php: update language path references - admin/modules/config.php, lang.php: update getLangPath() and scandir() - blocks/block-languages.php: update opendir() and img_find() paths - CONTRIBUTING.md, README.md, UPGRADING.md: update docs accordingly - tests/: fix path references in LanguageConstantsUsageTest et al.

Benefits: - Cleaner, shorter directory names throughout the module tree - Consistent naming convention across all 40+ module language bundles

11.03.2026
Refactor: apply Batches M–V column renames to blocks and modules
Автор: Eduard Laas | Дата: 22:59 11.03.2026

Update all SQL queries across blocks and feature modules to use normalized column names; rename whois st_*/hometext columns; drop bundled pclzip library.

Core changes:

  1. blocks/*.php:
  2. Column renames in all block queries (lang, status, etc.)
  3. modules//index.php, modules//admin/index.php:
  4. All module queries updated for Batches M–V renames
  5. hometext→body, bodytext→body, description→intro, etc.
  6. modules/whois/:
  7. hometext → body, st_domain/st_host/st_dc → sdomain/shost/sdc
  8. INSERT and SELECT queries updated in both user and admin panels
  9. modules/clients/pclzip.lib.php:
  10. Removed bundled third-party library (5693 lines)

Benefits: - All modules consistent with normalized schema after migration - Whois column names follow single-letter-prefix convention - Repository size reduced by removing bundled dependency

Technical notes: - No logic changes in any module; pure column name substitution - pclzip removal: dependency must be managed externally if still needed

Refactor: apply Batches M–V column renames to core and admin layer
Автор: Eduard Laas | Дата: 22:58 11.03.2026

Update all SQL queries in core bootstrap and admin panels to use the normalized column names established by Batches M–V migrations.

Core changes:

  1. core/system.php:
  2. blang → lang (blocks), module → modul (session)
  3. link → url (referer/auto_links)
  4. core/admin.php, core/user.php, core/security.php:
  5. Remaining session/user/admin column renames
  6. admin/modules/*.php:
  7. All admin panel queries updated to new column names

Benefits: - Core layer consistent with normalized schema - No more column-not-found errors after migration

Technical notes: - No logic changes; pure column name substitution

Refactor: rebuild table.sql and extend migrations (Batches M–V + DB audit)
Автор: Eduard Laas | Дата: 22:58 11.03.2026

Align fresh-install schema and all migration paths with current column naming conventions; add _whois to table.sql; fix audit findings found in idempotency review; rename st_domain/st_host/st_dc → sdomain/shost/sdc.

Core changes:

  1. table.sql:
  2. Apply all Batches M–V renames (pwd→password, lvisit→lastvis, etc.)
  3. Add _whois table (was missing from fresh install)
  4. Rename st_domain/st_host/st_dc → sdomain/shost/sdc
  5. batch_migrate.sql:
  6. Add Batches M–V: structural MODIFY, semantic renames, consistency fixes
  7. Fix idempotency bugs in addidx calls (stale intermediate column names)
  8. Add rencol calls for sdomain/shost/sdc rename
  9. table_update6_3.sql:
  10. Mirror all batch_migrate.sql fixes for 6.2→current upgrade path
  11. Add Batch U: _whois type normalization
  12. table_update6_3_finalize_local.sql:
  13. Local one-off finalizer for partially migrated live DB (not public path)
  14. setup/index.php:
  15. Apply column rename fixes to installer

Benefits: - Fresh installs and all migration paths produce identical schemas - Re-running migrations on already-migrated DBs no longer crashes - _whois is now created on fresh installs

Technical notes: - BOOLEAN alias = tinyint(1) in MariaDB; no wire-format change - sdomain/shost/sdc follow single-letter-prefix pattern (luid, eip, etc.) - table_update6_3_finalize_local.sql intentionally not idempotent

Refactor: rename all legacy DB columns across full codebase (Batches A–L)
Автор: Eduard Laas | Дата: 17:20 11.03.2026

Completes the multi-batch schema modernization: all SQL column references in PHP have been updated to match the new normalized table.sql schema, and a one-time migration script has been added for existing installations.

Core changes:

  1. _users / _users_temp (Batch L) — modules/account/{index,admin/index}.php, modules/forum/index.php, admin/index.php:
  2. user_id → id, user_name → name, user_rank → rank, user_email → email
  3. user_website → website, user_avatar → avatar, user_regdate → regdate
  4. user_occ → occ, user_from → origin, user_interests → interest
  5. user_sig → sig, user_viewemail → viewmail, user_password → password
  6. user_storynum → storynum, user_blockon → blockon, user_block → block
  7. user_theme → theme, user_newsletter → newslet, user_fsmail → fsmail
  8. user_psmail → psmail, user_lastvisit → lastvis, user_lang → lang
  9. user_points → points, user_last_ip → lastip, user_warnings → warnings
  10. user_acess → access, user_group → grp, user_birthday → birthday
  11. user_gender → gender, user_votes → votes, user_totalvotes → tvotes
  12. user_field → field, user_agent → agent, user_network → network
  13. check_num → code (users_temp)
  14. All other tables (Batches A–K) — 60+ PHP files across admin/, blocks/, core/, modules/, setup/, templates/:
  15. _admins: lastvisit → lvisit
  16. _auto_links: sitename → title
  17. _blocks: bid → id, bposition → bpos, active → status, blanguage → blang, blockfile → bfile
  18. _categories: parentid → parent, cstatus → status, lpost_id → lpost
  19. _clients/_partners: id_user → uid, id_product → prod, id_partner → part, adres → addr
  20. _comment: date → time, host_name → ip
  21. _faq/_help/_news/_pages: fid/sid/pid → id, catid → cid, ip_sender → ip
  22. _files/_links: lid → id, totalvotes → tvotes, totalcomments → tcom
  23. _forum: catid → cid, l_uid/l_name/l_id/l_time → luid/lname/lpost/ltime, e_uid/e_ip_send/e_time → euid/eip/etime
  24. _jokes: jokeid → id, cat → cid, joke → hometext, ratingtot → ratetot
  25. _media: createdby → author, totalvotes → tvotes, totalcom → tcom
  26. _message: mid → id, active → status, mlanguage → lang
  27. _order/_privat/_referer/_voting: date → time
  28. _products: preis → price, totalvotes → tvotes
  29. _rating: host → ip
  30. _search: sl_id → id, sl_word → word, sl_modul → modul, sl_time → time, sl_score → score
  31. _session: host_addr → ip
  32. setup/sql/batch_migrate.sql (new):
  33. One-time ALTER TABLE RENAME COLUMN script for all 27 tables
  34. Includes RENAME INDEX where index names also changed
  35. Special DROP/ADD for _rating UNIQUE KEY (column composition changed)

Benefits: - SQL column names now match table.sql schema exactly across all 65 files - No more legacy user_*/ip_sender/totalvotes/catid/ip_send naming in codebase - Migration script enables clean upgrade path for existing installations

Technical notes: - PHP placeholder names (:user_name, :user_id, etc.) intentionally unchanged - HTML form field names (name="user_name") intentionally unchanged - batch_migrate.sql requires MySQL 8.0+ or MariaDB 10.5+ (RENAME COLUMN support)

Refactor: harden search module and admin template; add search admin panel
Автор: Eduard Laas | Дата: 12:35 11.03.2026

Complete overhaul of the search module and admin template covering security hardening, config migration, and the new search admin interface.

Core changes:

  1. Search module (modules/search/index.php, config/search.php):
  2. Extract getSearchRow() helper to avoid duplicated row-rendering logic
  3. Rename search_result() to search() and wrap in switch($op)
  4. Fix XSS: escape $cdesc and $ctitle via htmlspecialchars() in all HTML contexts
  5. Migrate config key: $conf['search'] string -> $conf['search']['mods'] array
  6. Add config/search.php with all search settings moved out of global config
  7. Search admin panel (modules/search/admin/):
  8. Add new admin interface for search module configuration
  9. Include multilingual info files (de, en, fr, pl, ru, uk)
  10. Admin template (templates/admin/index.php):
  11. Replace opendir/readdir/closedir with scandir(BASE_DIR.'/language')
  12. Fix XSS: escape $admin[1] via htmlspecialchars() before use in HTML
  13. Fix undefined $cach in setTemplateBlock() static cache on cache miss
  14. Replace SELECT * with SELECT 1 LIMIT 1 for admin existence check
  15. Add :string return types to all three template functions
  16. Remove unused global declarations ($user, $theme, $conf)
  17. Replace die() with exit; update copyright year to 2026
  18. Convert tabs to 4-space indentation per coding standard
  19. Language files (admin/language/*.php):
  20. Sync language constants across de, en, fr, pl, ru, uk
  21. Core and config (core/admin.php, core/system.php, config/global.php, config/modules.php, admin/modules/config.php, admin/index.php, modules/order/index.php):

  22. Various refactors and config key updates aligned with new structure

Benefits: - Eliminates stored XSS vectors in search result rendering - Removes CWD-dependent filesystem path in admin template loader - Static template cache no longer risks undefined-variable TypeError in PHP 8.x - Search config is now isolated in config/search.php

Technical notes: - config/search.php is a new required config file - modules/search/admin/ is a new directory; activate via config/modules.php - No DB schema changes

10.03.2026
Refactor: rename legacy helpers; optimize filterTextHighlight; drop search_color
Автор: Eduard Laas | Дата: 21:39 10.03.2026

Three related cleanups applied system-wide. Legacy function names replaced with camelCase equivalents matching project naming conventions. search_color (marked # OLD DELETE) deleted and replaced by an optimised filterTextHighlight. filterTextHighlight rewritten for performance: single combined regex instead of one pass per word, batch str_replace for tag extraction/restoration.

Core changes:

  1. Helper function renames (core/system.php + 24 call sites):
  2. defconst() → getConst()
  3. deflmconst() → getModuleName() (strtr replaced by array lookup $map[$k] ?? $k)
  4. deflang() → getLangName() (same) Callers updated in: core/admin.php, core/user.php, admin/modules/,

blocks/block-{languages,modules}.php, templates/*/index.php,
modules/{account,search,voting/admin}/index.php
  1. filterTextHighlight() rewrite (core/system.php:1674):
  2. array_unique + sort words by length desc before building pattern
  3. preg_quote per word; all words joined into one alternation regex
  4. Tag placeholders switched to \x00TAGn\x00 (no risk of HTML collision)
  5. Batch str_replace(array, array) for tag extraction and restoration
  6. search_color() removed (core/system.php):
  7. Was marked # OLD DELETE; fully superseded by filterTextHighlight()
  8. All 18 call sites migrated: modules/{content,forum,files,faq,search, auto_links,links,jokes,shop,pages,media,help,news}/index.php, modules/shop/admin/index.php

Benefits: - Consistent camelCase naming across all helper functions - filterTextHighlight: O(1) regex passes regardless of word count - No dead code (search_color deleted) - Safer tag placeholder avoids numeric pseudo-tags <1>, <2>

Refactor: isolate changelog language constants and clean up entry points
Автор: Eduard Laas | Дата: 21:38 10.03.2026

Split changelog language constants into user/admin scopes — user files now contain only what index.php needs, admin-only constants moved to the admin/language layer. Adds page title to setHead() in changelog/index.php. Removes two redundant require_once calls for config files already loaded automatically by getConfig() via glob in core/system.php.

Core changes:

  1. Language constants (modules/changelog/language/*.php):
  2. Removed 19 admin-only constants from user language files (all 6 locales) * Kept: filter/search UI, date labels, error messages * Removed: source config, export, cache TTL, stats, GitHub API fields

  3. Admin language files (modules/changelog/admin/language/*.php):
  4. Added as new tracked files (were untracked)
  5. Removed one dead constant (_CHLOG_ERR_GH_API_JSON) unused anywhere
  6. Module entry point (modules/changelog/index.php):
  7. setHead() now receives ['title' => _CHANGELOG]
  8. System entry point (index.php):
  9. Removed require_once CONFIG_DIR.'/shop.php' (go==2 block)
  10. Removed require_once CONFIG_DIR.'/uploads.php' (go==4 block)
  11. Both configs are already merged by getConfig() on startup

Benefits: - Admin-only constants no longer loaded for regular users - No dead constants in language files - Page title set correctly in changelog module - Cleaner index.php without redundant file loads

09.03.2026
Refactor: unify legacy text helpers and stabilize monitor handling
Автор: Eduard Laas | Дата: 15:35 09.03.2026

This commit completes the current legacy text refactor by renaming the old replacement helper to filterReplaceText, migrating bb_decode call sites to filterMarkdown(..., false), and removing redundant wrapper experiments. It also includes the monitor fix, client archive flow updates, template style updates, and rule documentation needed to keep future refactors consistent.

Core changes:

  1. Legacy text pipeline (core/system.php):
  2. Renamed search_replace() to filterReplaceText()
  3. Migrated bb_decode()-based output paths to filterMarkdown(..., false)
  4. Removed redundant wrapper indirection and kept direct behavior-preserving calls
  5. Frontend and admin modules (modules/, admin/modules/, blocks/*):
  6. Updated legacy content rendering call sites to the new helper/parser naming
  7. Switched client archive generation away from PclZip to the core compression flow
  8. Fixed monitor database size handling to stop undefined array key warnings
  9. Project guidance and templates (.rules/, .agents/, templates/*):
  10. Added explicit migration guidance for rename-vs-wrapper decisions
  11. Synced architecture notes for parser and replacement helper migrations
  12. Adjusted template system styles alongside the current refactor batch

Benefits: - Lower maintenance cost by reducing legacy naming drift and wrapper noise - Better reliability through the monitor fix and centralized archive handling - Clearer project rules for future refactors with minimal behavior change

Technical notes: - Legacy content still uses filterMarkdown(..., false) where raw HTML passthrough is required - filterReplaceText() is now the canonical replacement helper name in the codebase - Backward compatibility is preserved at runtime, but old helper names were intentionally removed from the code

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