Modules dependencies - Seagull 0.4.0 CVS 2004/11/15

TODO: Create DSM (http://www.lattix.com/technology/whatisdsm.htm)

This page describes the dependencies beetwen Seagull modules.

Of course, all the modules needs the SGL Core. So we can determinate that a basic Seagull install would be :

  • SGL Core
  • default module
  • user module
  • messaging module

The maintenance module is too an important one, and should be kept.

SGL Core

Mandatory Seagull Modules

  • default
  • user

Optional Seagull Modules

External Modules

  • lib/pear/Benchmark/Timer.php
  • lib/pear/Cache/Lite.php
  • lib/pear/Date.php
  • lib/pear/DB.php
  • lib/pear/DB/NestedSet.php
  • lib/pear/HTML/Template/Flexy.php
  • lib/pear/Log.php
  • lib/pear/Pager/Pager.php
  • lib/pear/PEAR.php
  • lib/pear/System.php

Tables used

  • block
  • block_assignment
  • category
  • item
  • item_type
  • item_type_mapping
  • item_addition
  • log_table (only used for Log_sqlite class, when logging to an sqlite table)
  • session
  • table_lock (used by modules for SGL_NestedSet)
  • user

block module

External Modules

  • lib/pear/HTML/QuickForm.php

Tables used

  • block
  • block_assignment
  • section

Each block in modules\block\classes\blocks has its own dependencies (eg.: navigation - DirectoryNav.php requires modules/navigation/classes/MenuBuilder.php)

contactus module

Mandatory Seagull Modules

  • messaging

External Modules

  • lib/pear/Validate.php

Tables used

  • contact_us
  • usr

default module

External Modules

  • lib/pear/Config.php
  • lib/pear/Validate.php

Tables used

  • module
  • permission

=> TODO : Handle correctly '$confnavigation?driver?', '$confnavigation?stylesheet?' and '$confnavigation?enabled?' => In DefaultMgr, '_showNews' action possible only if 'publisher' module is installed ?

documentor module

Mandatory Seagull Modules

  • navigation
  • publisher

faq module

Tables used

  • faq

guestbook module

Tables used

  • guestbook

maintenance module

Mandatory Seagull Modules

  • default

External Modules

  • lib/pear/Config.php
  • lib/pear/System.php
  • lib/pear/DB/DataObject/Generator.php

Tables used

  • sequence

messaging module

External Modules

  • lib/pear/Mail.php
  • lib/pear/Mail/mime.php
  • lib/pear/Net/UserAgent/Detect.php

Tables used

  • contact
  • instant_message
  • usr

Mandatory Seagull Modules

  • user
  • publisher

External Modules

  • lib/pear/Cache/Lite.php
  • lib/pear/Config.php

Tables used

  • item
  • item_addition
  • item_type
  • item_type_mapping
  • section
  • table_lock (SGL_NestedSet)

Only files in module/navigation/classes/menu/ need 'publisher' module

newsletter module

Mandatory Seagull Modules

  • user

External Modules

  • lib/pear/Mail.php
  • lib/pear/Validate.php
  • lib/pear/Mail/mime.php

publisher module

Mandatory Seagull Modules

  • navigation
  • user

External Modules

  • lib/pear/Text/Statistics.php
  • lib/pear/HTML/TreeMenu.php
  • lib/pear/HTML/Tree.php
  • lib/pear/System.php
  • lib/other/Zip.php

Tables used

  • category
  • document
  • document_type
  • item
  • item_addition
  • item_type
  • item_type_mapping
  • usr

randommsg module

Tables used

  • rndmsg_message

user module

Mandatory Seagull Modules

  • messaging
  • default

External Modules

  • lib/pear/Validate.php
  • lib/pear/Text/Password.php
  • lib/pear/System.php

Tables used

  • item
  • login
  • module
  • org_preference
  • organisation
  • organisation_type
  • permission.php
  • preference
  • role
  • role_permission
  • table_lock (SGL_NestedSet)
  • user_permission
  • user_preference
  • usr