Run-Time Configuration

Pie extracts its configuration from file pie.ini. pie.ini is parsed by the master multiplexer, pie.php, yielding a global assiciative array, $GLOBALS['pie'], to hold all run-time configuration settings. The format of file pie.ini is that of an ini-file and must abide the conventions defined for such files and the key/value-pairs they contain. All keywords consists of lower-case characters interspersed with at least one underscore character somewhere in the middle of the word.

What follows is a list of all currently available configuration options. Default values are given in brackets.

Permission/Authentication

private_site
If set to true, the site can only be accessed (and even browsed) by registered users, who have to log in to even browse the contents. [false]
deny_register
Users are prevented from registering new users, resulting in the user base to be fixed. [false]
deny_removal
Resources cannot be deleted or renamed unless handled by an admin. [false]
admin_list
A comma separated list of user names that are granted superuser permissions for all operations. [admin]

File Names & Paths

All names represent file names and directories that are accessed within the run-time context of the web server's file system. They can be specified as absolute path names (starting with a slash) or as path names relative to the current working directory (without a slash).

Note that certain operating systems pose limitations on the total length and type of characters that can be used for path names.

custom_path
A directory that contains customized data for yor installation, such as layout and, by default, the global configuration file. [etc]
library_path
A directory that contains Pie's code library, including classes, locales and translation tables. [lib]
run_path
A directory that is used to store all run-time files, both static and temporary. This directory as well as all its sub directories must be writable by the EUID of the web server. [run]

Link Formats

These strings are resolved whenever local URLs are to be composed. Unless you have to take care of page redirections, URL aliasing and URL rewriting, you are safe with the default values.

page_link
Link for local pages.
file_link
Link for local files that are being downloaded.
media_link
Link for local files that are accessed in streaming mode (i. e. "dumped"), like images, movies and other media files.
base_link
URL base used for arbitrary commands.

Redirection

auto_redirect
Aliases of pages and files redirect to their respective originals. By using the default value, true, this usually occurs on the fly, while a value of false requires users to manually acknowledge the redirection. [true]
redirect_page_url
String to render the URL for page redirection.
redirect_file_url
String to render the URL for file redirection.
redirect_media_url
String to render the URL for the redirection of media files.
redirect_base_url
String to render the URL for redirected commands.

Pattern Matching

All strings represent patterns that are passed to PHP's PCRE-compatible pattern matching functions and that have to be matched by a user's input to be recognized as candidates for the respective type of link.

Note that patterns do not include leading ^ and trailing $ characters.

page_pattern
The pattern a page name must match against.
page_link_pattern
Pattern used to specify the composition of page names. Page links on pages are matched against this pattern.
file_pattern
The pattern a file name must match against.
file_link_pattern
Pattern used to specify the composition of file names. File links on pages are matched against this pattern.
wiki_link_pattern
Pattern used to specify the composition of Wiki page names. If unset or set to false, Wiki patterns in continuous text are not checked for at all. This is the default behaviour.
group_pattern
Pattern used to specify the composition of group names that are used as paths for pages and files. See also group_delimiter.
group_link_pattern
Like group_pattern, but used to validate links on pages against.
user_pattern
Pattern used to specify the composition of user names.

The difference between the *_link_pattern and the *_pattern-variant is that the former is used to check for matches in page links, while the latter is used to validate the arguments of actions. For instance, page_link_pattern, by default, allows authors to use white spaces in page links, enabling links like [[Groucho Marx]] to reflect actual terms, while, once the page is created and internally converted to Groucho_Marx, page_pattern does not allow white spaces anymore when the page is called upon any time later.

General Options

default_page
The default Home page of the site that is being shown whenever no pages is specified.
default_locale
The ISO country code for the system locale, that is, en, fr, es, etc. Regional and cultural specifications are possible, like en_CA, de_AT, etc. [en]
page_caching
Once compiled, the output of pages is saved for later access. [true]
dba_type
The type of DBM-database used to store information. The basic distribution is not based on DBA and does not use this option. [false]
session_timeout
Number of seconds after which inactive user sessions are automatically terminated. A value of false/0 disables this options. Note, however, that disabled timeout will result in the accumulation of session files. [3600]
edit_timeout
Number of seconds after which locked pages are freed and made available for editing by other users. [3600]
time_format
Format used for time stamps. A string that is passed to function date(). [ISO date format]
split_log_file
If set, the log is split up occording to its type of log entry. Splitting a log file may be useful for sites under high load. [false]
log_ip
Include the user's IP address in the log file. [true]
group_delimiter
Character (or string thereof) to mark the delimiter between the grou path and the base name of a page or file. [/]
link_text_delimiter
Character (or string thereof) to mark the delimiter between the name of a page and the alternate text displayed in its stead. [|]
media_alt_text
(HTML) Text to be displayed in stead of missing images and media files. [⊗]
max_name_length
Maximum length for names of pages and files. Note that, compared to the names displayed on the screen, actual file names used to store the users' bits and bytes may require up to three times as many characters when stored in the file system. [80]
hide_group_name
If set, group names are not displayed in continuous text. [true]
hide_parentheses
If set, pages name suffices in parentheses are not displayed in continuous text. [true]
page_header
If set, the title of a page is automatically prepended on top of it. [true]
page_footer
If set, the author and time stamp is automatically appended at the bottom of a page. [false]
Pie powered