Files and directories structure
The UNB distribution archive contains the following directories and files:
-
docs/
General documents like the distribution license. Should not be uploaded to the web location. -
extra/
Additional scripts and resources like import scripts, smileys sets, plug-ins or translations. See the file readme.txt for details. Should not be uploaded to the web location. -
unb_lib/
Main forum source code directory.-
designs/
All designs and smileys sets that shall be used.-
_smile/
All smileys sets that shall be used. Each of them is in its own directory whose name only contains letters, numbers, “-” or “_”. The file config.php in each of these directories defines the smileys, their codes and images. See the comments in that file for details. One smileys set can be selected for use in the Administrator Settings. -
*/
All designs that shall be used. Each of them is in its own directory whose name only contains letters, numbers or “-”.-
css/
CSS stylesheets. Can be referenced from templates and plug-ins. -
img/
Images. Can be referenced from config.php and templates. -
js/
JavaScript files. Can be referenced from templates. -
tpl/
HTML templates directory. Contains all template source files.-
cache/
Template cache directory. All compiled templates of this design will be stored here. Must be writable.
-
cache/
-
config.php
General design definition. Contains mostly image declarations. -
config.user.php
Custom design definition. Can be used to modify the default definition. Will not be overwritten when updating. -
css.user.php
Custom CSS stylesheet. Can be used to modify the default stylesheet. Will not be overwritten when updating. -
css.user.php.example
Custom CSS stylesheet example. Can be used as template for css.user.php. -
cssconfig.php
Default configuration of the CSS stylesheets. Contains common settings like browser detection and font sizes. -
cssconfig.user.php
Custom CSS configuration. Can be used to modify the default settings. Will not be overwritten when updating. -
cssconfig.user.php.example
Custom CSS configuration example. Can be used as template for cssconfig.user.php. -
name.txt
The design’s display name. Interpreted in UTF-8 character set if BOM is present.
-
css/
-
config.user.php
Custom design definition for all designs. Can be used to modify the default definition. Will not be overwritten when updating. -
css.user.php
Custom CSS stylesheet for all designs. Can be used to modify the default stylesheet. Will not be overwritten when updating. -
css.user.php.example
Custom CSS stylesheet for all designs example. Can be used as template for css.user.php.
-
_smile/
-
fonts/
TrueType fonts for the VeriWord image generation. -
geshi/
Supported GeSHi languages. See geshi.lib.php. -
lang/
All translations that shall be used.-
*/
Each translation resides in its own directory, named after the ISO 639 2-letter language code, optionally followed by the local country code if there are multiple versions of that language.-
flag.png
Country flag for this language. Will be used for the language selection and on the download website. -
name.txt
Native language name. This is displayed for the language selection and on the download website. Interpreted in UTF-8 character set if BOM is present. -
common.php
Main translation content file. This file is always included in the source code. It contains basic texts and other local information like date and time formats. -
*.php
Translation content files. These files can be included separately by the source code or HTML templates. If a specific file cannot be found in the preferred translation, it will be searched in the board default language and finally in any available translation.
-
flag.png
-
*/
-
logs/
Board’s access and error logs. Must be writable.-
board-*.log
Board access logs. These files are organised by year, month and day and contain a record for any action a user took. They can be used for security-related analysis or to determine an error context for example. -
error-*.log
Board error logs. These files are organised by year and month and contain a record for any error that occured during the software execution. -
ip.log
IP access log. This file stores any page request from a specific IP address with its timestamp and is used for automatic host banning (IP banning) when a certain requests rate is exceeded.
-
board-*.log
-
noises/
Background images for the VeriWord image generation. -
plugins/
All installed plug-ins. -
rsscache/
Cache directory for main or forum RSS feed files. Must be writable. -
upload/
Upload directory for post attachments, avatars and user photos. Must be writable. -
abbc.conf.php
Default ABBC configuration. Can be customised with plug-ins. -
abbc.css.php
Default ABBC stylesheet. Can be customised in designs’ stylesheet, probably “post.css”. -
common.js
Common JavaScript functions and resources. -
common.lib.php
Common UNB functions and resources. This is the main library of UNB. -
common_out.lib.php
Common output functions and resources. Contains mostly page output routines. -
database.lib.php
Database abstraction layer. Default file is for MySQL database servers but can be altered and replaced to support other DBMS. -
feedcreator.lib.php
FeedCreator library, generating RSS news feeds. -
geshi.lib.php
Generic Syntax Highlighter (GeSHi) library. Source code syntax highlighter for the [code] tag. -
jabber.lib.php
Class.Jabber.PHP library, connecting to Jabber servers and sending out messages. -
ute-*.php
Unclassified Template Engine library and configuration. Handles HTML page templates defined in the designs. -
veriword.lib.php
VeriWord library, generates CAPTCHA images to prevent automated bot actions for registration and posting. -
*.php
Other code libraries. See the code reference for details.
-
designs/
-
.htaccess
Main Apache configuration file. Sets source file access rights and defined short URLs. See .htaccess files overview for other files. -
board.conf.php.example
Board configuration file example. This is the release default file that will be copied to board.conf.php at installation time if not present yet. -
forum.php
Main forum request handler. This file is called in the browser. -
install.php
Installation, import, upgrade and uninstallation script. Requires import modules in the same directory to import data from other forum systems.