TWIG Administrators Manual

Return to Table of Contents

4.1 Configuration - config.inc.php3

This file contains all of the primary configuration items for TWIG.

Here is a list of the settings:

Primary Configuration Settings:

$config["fromdomain"]  This is where mail will be sent from, usually this is the domain name of your server.
$config["basedir"]  The path of the URL to your TWIG installation, usually /twig, this is not a complete URL, only the path after the server name.
$config["imgdir"]  The path to graphics files, usually /twig/images.
$config["index"]  This is what you name the index file, usually index.php3, changing this may cause problems in future versions of twig and it is therefore recommended that you do not alter this setting.
$config["auth"] Authorization Type, default to forms.

basic authentication uses the http standard authentication mechanism to retrieve a username and password from the user.

forms authentication uses an HTML form (contained in login.header.inc.php3, login.form.inc.php3 and login.footer.inc.php3) to retrieve a username and password from the user.  This method is the preferred method due to its ability to properly log out a user, basic auth does not properly support his functionality.

$config["auth_timeout"] Set the auth timeout value in seconds (1800sec = 30min), this will 'expire' a user if they have not reloaded a page in the specified time.
$config["auth_logout_redirect"] Set the page to redirect the user to after they have logged out of TWIG.
$config["auth_provider"] Authorization Method.
imap
This provider mirrors TWIG 1's login process, an IMAP
server is connected to and a mailbox is opened each 
time a page is loaded.
imap-new
This provider differes from the orginal TWIG system by
not opening the mailbox on the inital page load, but
waits until the mailbox is required to open in. 
sqltable
This provider uses a sqltable (twig_accounts) to store
users and passwords in, users must first be created in this
table before they will be allowed to log in.

This provider does not require an IMAP server to function.
mysql
This provider connects to a MySQL server as the given
username and password, if successful it allows the user on,
otherwise they are rejected.
pgsql
This provider connects to a pgsql server as the given
username and password, if successful it allows the user on,
otherwise they are rejected.
oracle
This provider connects to a oracle server as the given
username and password, if successful it allows the user on,
otherwise they are rejected.
sqlimap
This is a comibination of imap-new and sqltable, it first
checks the sqltable for the user, if found it allows the user
to log on. If not found then the imap server is contacted
and checked. If the user is validated by the imap server 
then they are added to the sqltable so that next time the
IMAP server will not be connected to untill need to by
the mail module.
sqlopen
This provider is based on sqltable but if the user is not
found in the table, then the user is added to the table
automaticly, effecitivly giving open access to the server.
ldap
This provider connects to an ldap server as then given
username and password, if successful it allows the user on,
otherwise they are rejected.
nntp
This provider connects to an nntp (news) server as then given
username and password, if successful it allows the user on,
otherwise they are rejected.
$config["security"] Type of security to use.
basic
This allows certain functions of TWIG to be disabled on a system-wide basis.
advanced
This is a full blown ACL based security system that in future versions of TWIG will be used to control much of the functionality of TWIG on an administrative level.
$config["groups"] Type of group support to use.
none
No groups will be supported and the user will not be able to 'file' their items in anything but a single group that only they can see.
personal
This groups system allows for items to be filed into groups for purposes of organization, but does not allow for sharing of information.
standard
This is the traditional TWIG group support. Like 'personal', it allows for items to be filed into groups for purposes of organization. However, standard groups can also be shared with other users allowing them to view an modify that information.
userperms
Like 'standard', this group type allows items to be placed into groups for purposes of organization and allows those groups to be shared among multiple users. However, the userperms groups system allows different users to be given different levels of access to the information filed under those groups.
$config["session_handler"] Session hanlder.
get
This is the traditional TWIG storage system of this information, in forms hidden fields are used, in links additional variables are added.
sqltable
This is a method that uses sqltables to store the session information and only uses a reference pointer on the url or in the forms.
get2
This method is similar to get except that it produces a much shorter and more human readable url.
php4session
This is a method that uses php4's built in session hanlder to store the session information.
$config["session_expiry"] How long session records are retained (in seconds)
$config["login_handler"] Login handler  base64cookie|php4session|session|securecookie.php4session|securecookie.sqltable)
cookie
This is the traniditonal TWIG storage system of this information, username and passwords are stored as a cookie.
sqltable
This is a method that uses sqltables to store the login information and only uses a reference pointer in a cookie.
session
This is a method that uses stores the login information in the session data store, this should only be used with the sqltable session handler and is less secure than the other system
base64cookie
This method is similar to cookie except that it encodes the cookie information with a base64 method.
php4session
This is a method that uses php 4's built in session handler to store the login information.
securecookie.php4session
This is a method that 'splits' the login information between the client and server, only when the page is being loaded does the password become available and no information is retained after the page has finished. This handler uses php 4's built in session hanlder to store the server side data.
securecookie.sqltable
This is a method that 'splits' the login information between the client and server, only when the page is being loaded does the password become available and no information is retained after the page has finished. This handler uses a sqltable to store the server side data and will work with php 3 or 4.
$config["language"] Language file to use by default (english)
$config["spellcheck"] Command, including full path and flags to run a spellcheck (via pipe)

Color Configuration:

$config["cellcolor"] Background color of certain cells
$config["cellcoloralt"] Alternate background color of mail list cells
$config["cellcolorhigh"] Highlight background color of cells
$config["celltext"] Text color inside those cells
$config["cellheadcolor"] Background color of header cells
$config["cellheadtext"] Text color inside those cells
$config["cellfont"] Font of text inside those cells
$config["tabcolorlight"] Color to make the 'light' portion of a tab menu
$config["tabcolordark"] Color to make the 'dark' portion of a tab menu

Font Size Configuration:

$config["textfontsize"] Font size of standard text
$config["titlefontsize"] Font size of title text
$config["largetitlefontsize"] Font size of large title text
$config["smallfontsize"] Font size of small text
$config["tinyfontsize"] Font size of tiny text

Date Display Configuration:

$config["timeformat"]["12"] Format to display time in for 12 hour clocks (see http://www.php3.org/manual/function.date.php3 for details on the format).
$config["timeformat"]["24"] Format to display time in for 24 hour clocks (see http://www.php3.org/manual/function.date.php3 for details on the format).
$config["longdateformat"] Format to display long dates in (see http://www.php3.org/manual/function.date.php3 for details on the format).
$config["shortdateformat"] Format to display dates in (see http://www.php3.org/manual/function.date.php3 for details on the format).
$config["firstdayweek"] The day to start the week on, 0=sunday, 1=monday

IMAP Server Configuration:

$config["imap_servertype"] IMAP Server type (php-imap|php-pop3)
$config["imap_server"] IMAP Server Host (defaults to localhost)
$config["imap_port"] IMAP Server Port (defaults to 143)
$config["imap_path"] IMAP Mail Path (defaults to home dir)
$config["mail_folder_delimiter"]  What delimiter to use to seperate mail folders in to a hiarchy ("/" for UofW IMAP, "." for Cyrus and Courier)

SMTP Server Configuration:

$config["mail_sender"] Which mail delivery mechinisum to use, internal/relay/imap-mail?
$config["smtp_server"]  SMTP Relay server to send mail through, can be localhost.
$config["smtp_port"] SMTP Relay server port to send mail through
$config["smtp_clientip"] If enabled, an additional header line will be added to record the originating IP address of the client

NEWS Configuration:

$config["news_server"]  News Server Host (defaults to localhost)
$config["news_port"]  News Server Port (defaults to 119)

VHosts Configuration:

$vhosts[<server_name>] Setup support for virtual hosts, see the VHOSTS section for details

Disabled features Configuration:

$disabled["mail_compose"] Turns of the mail composing feature (see FAQ for complete list of features that can be disabled)
 

Return to Table of Contents Return to Top