Skip to content

Refactor iForum bootstrap to stop direct central Art includes#39

Merged
fiammybe merged 9 commits into
ipf-refactorfrom
copilot/remove-art-includes-bootstrap
May 26, 2026
Merged

Refactor iForum bootstrap to stop direct central Art includes#39
fiammybe merged 9 commits into
ipf-refactorfrom
copilot/remove-art-includes-bootstrap

Conversation

Copy link
Copy Markdown

Copilot AI commented May 26, 2026

The module still relied on central bootstrap/runtime files to pull in src/class/art/* directly, coupling entry-point initialization to the Art runtime. This change moves those bootstrap responsibilities behind the module bootstrap/helper layer while preserving existing page and object-loading behavior.

  • Bootstrap routing

    • Central bootstrap points no longer include src/class/art/* directly:
      • src/icms_version.php
      • src/header.php
      • src/include/functions.ini.php
      • src/admin/admin_header.php
    • These files now initialize through src/include/bootstrap.php, keeping Art loading behind a module-owned bootstrap surface.
  • Shared Art runtime helpers

    • Added bootstrap-level helpers to resolve module paths and load Art runtime pieces on demand:
      • iforum_load_art_functions_ini()
      • iforum_load_art_functions()
      • iforum_load_art_object()
    • This centralizes runtime wiring and avoids repeating Art include logic across entry points.
  • Compatibility and deprecation

    • iforum_load_object() remains in place as a compatibility wrapper.
    • It is now explicitly deprecated and delegates to iforum_load_art_object() instead of calling Art bootstrap directly.
  • Entry-point behavior

    • Front-end bootstrap continues to initialize shared functions through the module helper path.
    • Admin bootstrap still loads the Art admin runtime, but through the module bootstrap/helper layer rather than direct includes.
// Before
include_once ICMS_ROOT_PATH."/modules/".$modulename."/class/art/functions.ini.php";

// After
include_once ICMS_ROOT_PATH."/modules/".$modulename."/include/bootstrap.php";

Copilot AI and others added 9 commits May 26, 2026 09:01
@fiammybe fiammybe added this to iF3 May 26, 2026
@fiammybe fiammybe moved this to In Progress in iF3 May 26, 2026
@fiammybe fiammybe linked an issue May 26, 2026 that may be closed by this pull request
5 tasks
@fiammybe fiammybe marked this pull request as ready for review May 26, 2026 09:16
@fiammybe fiammybe merged commit 9ec7f8f into ipf-refactor May 26, 2026
8 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in iF3 May 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Remove central Art bootstrap usage from module entrypoints

2 participants