NaSMail About  |  Documentation  |  Downloads  |  Plugins  |  Contribs  |  Project Site

NaSMail meta includes

This document provides information about code included when you load some NaSMail scripts.

include/validate.php

Main meta include. Must be loaded in all directly loaded NaSMail scripts, that are accessed by authenticated webmail users. Can't be loaded in scripts that work in unauthenticated state. Technically scripts can be optimized to load only some scripts, but it is not recommended. If script uses other NaSMail scripts, those scripts might expect enviroment with all include/validate.php includes.

1. class/mime.class.php
  1.1. class/mime/Rfc822Header.class.php
  1.2. class/mime/MessageHeader.class.php
  1.3. class/mime/AddressStructure.class.php
  1.4. class/mime/Message.class.php
  1.5. class/mime/SMimeMessage.class.php
  1.6. class/mime/Disposition.class.php
  1.7. class/mime/Language.class.php
  1.8. class/mime/ContentType.class.php
2. functions/global.php
  * sanitizes register_globals=on
  * fixes differences between php 4.0.x and 4.1+ globals (only in 1.0)
  * undoes magic_quotes_gpc=on sanitizing
  * turns on 'session.use_cookies'
  * turns off 'magic_quotes_runtime'
  * sets 'session.name'
  * starts session
  2.1. functions/strings.php
  2.2. config/config.php or config/default_config.php
3. functions/strings.php (FIXME: already loaded)
  3.1. functions/global.php (php_self() function)
  3.2. plugins/compatibility/functions.php (since 1.1)
  * sets version variable and constant.
  * sets $PHP_SELF
4. config/config.php (FIXME: already loaded or creates include error)
  4.1. config/config_local.php
5. functions/i18n.php
  5.1. functions/global.php (sqgetGlobalVar() function)
  * reads 'squirrelmail_language' cookie
  * loads $languages. $languages array is built from locale/*/setup.php files
  * loads own gettext functions, if php gettext is unavailable
6. functions/auth.php
7. include/load_prefs.php
  7.1. include/validate.php (FIXME: recursive include)
  7.2. functions/plugin.php
    7.2.1. functions/global.php (register_globals sanitizing)
    7.2.2. plugins/*/setup.php files for enabled plugins.
    * starts all squirrelmail_plugin_init_pluginname functions
  7.3. functions/theme.php
  7.4. functions/constants.php
  7.5. functions/prefs.php
    7.5.1. functions/global.php
    7.5.2. functions/plugin.php
    7.5.3. functions/display_messages.php
    7.5.4. 'prefs_backend' hook
    7.5.5. Preference functions
      a) $prefs_backend set in prefs_backend hook
      b) functions/db_prefs.php
      c) functions/file_prefs.php
  7.6. reads user preferences
  7.7. 'loading_prefs' hook
8. functions/page_header.php
  8.1. functions/global.php (FIXME: unused, already loaded in include/validate.php)
  8.2. functions/strings.php (FIXME: unused, already loaded in include/validate.php)
  8.3. functions/html.php
  8.4. functions/imap_mailbox.php
    8.4.1. functions/imap_utf7_local.php
9. functions/prefs.php (FIXME: already loaded. see 7.5)

functions/imap.php

Loads IMAP functions

functions/imap_mailbox.php
functions/imap_messages.php
functions/imap_general.php
functions/imap_search.php

functions/addressbook.php

Loads address book functions

functions/prefs.php

Preference functions. See include/validate.php 7.5

functions/mime.php

MIME functions

functions/imap.php
functions/attachment_common.php
functions/htmlfilter.php

includes that execute code

Main files

include/validate.php
include/load_prefs.php
functions/global.php
functions/strings.php
functions/i18n.php
functions/plugin.php
functions/addressbook.php - executes 'abook_add_class' hook

functions/abook_database.php and functions/db_prefs.php

Loads DB.php. NaSMail 1.0 and 1.1 check, if DB.php is loaded. Check is moved to database and preference classes in NaSMail 1.2+

other files

functions/attachment_common.php
functions/constants.php
functions/date.php (FIXME: constants.php include)
functions/display_messages.php (plugin.php include)
functions/gettext.php (two includes and function_exists checks)
functions/identities.php (load_prefs.php include)
functions/options.php (option constants and class)
functions/page_header.php (four includes)
functions/tree.php (imap.php include)
functions/url_parser.php ($IP_RegExp_Match, $Host_RegExp_Match and
  $Email_RegExp_Match globals)

This file last modified on 2013-07-23 21:17 CEST
Copyright © 2006-2009 The NaSMail Project