Tiger_Model_Module

@api · extends Tiger_Model_Table

Tiger_Model_Module — the module lifecycle registry (see migration 0023).

The source of truth for which modules are ACTIVE. inactiveSlugs() is the hot path the boot-time gate (Tiger_Application_Resource_Modules) calls to strip deactivated modules from the controller-directory map — it must stay a single cheap indexed query. Everything else feeds the Modules admin + (later) the installer.

Methods

inactiveSlugs()

inactiveSlugs()

Slugs of deactivated modules (active = 0). The gate's query — keep it lean.

Returns array<int,string> — the slugs of inactive modules

bySlug()

bySlug($slug)

One row by slug, or null.

  • $slug string — the module slug

Returns Zend_Db_Table_Row_Abstract|null — the module row, or null if none

bySlugMap()

bySlugMap()

All rows keyed by slug — for overlaying state onto discovered modules.

Returns array<string,Zend_Db_Table_Row_Abstract> — module rows keyed by slug

setActive()

setActive($slug, $active, array $meta = [])

Set a module's active state (upsert). A discovered module gets a row the first time it's toggled; an installer-managed row keeps its provenance. Returns the row id.

  • $slug string — the module slug
  • $active bool — the desired active state
  • $meta array — optional provenance for a new row (source, name, version)

Returns string — the module_id

install()

install($slug, array $meta)

Record an installed (or updated) module with full provenance + active. Returns the id.

  • $slug string — the module slug
  • $meta array — provenance (name, version, repository, ref, source)

Returns string — the module_id

uninstall()

uninstall($slug)

Drop a module's registry row (uninstall).

  • $slug string — the module slug

Returns int — the number of rows deleted