WiND has a sample folder named config-sample/. In this folder there are the basic configuration properties needed.
First, you must copy the folder config-sample/ to config/ located in the main project folder.
Below is a list with the contents of config/ folder and their explanation.
'db' => array(
'server' => "server.example.org",
'username' => "youruser",
'password' => "yourpassword",
'database' => "yourdatabase",
'version' => yourversion //Ex. 4.0, 4.1, 5
This section contains the information for the database that stores the project data.
'site' => array(
'domain' => 'server.example.org',
'url' => 'http://server.example.org/'
This section contains your server domain name and url that hosts the project.
'cookies' => array(
'expire' => (60 * 60 * 24 * 30)
You can set the expiration time for all cookies that are being used by the project. The time is in seconds.
'message' => array(
'delay' => 5
You can set the delay time for all messages that are being displayed by the project. The time is in seconds.
'templates' => array(
'path' => ROOT_PATH.'templates/',
'compiled_path' => ROOT_PATH.'templates/_compiled/',
'default' => 'basic'
This section defines the templates properties configuration.
- path: The path that contains all the templates available. Each template must be in this folder inside a subdirectory.
- compiled_path: The path that contains all the compiled files. It is recommended that you use a path outside the project main directory (for example you can use: /tmp/wind/). Don't forget to create the directory and properly configure the read-write permissions for this folder.
- default: The name of the default template used by the project, if no other has been selected by the user.
'language' => array(
'default' => 'greek',
'enabled' => array(
'greek' => TRUE,
'english' => TRUE)
This section defines the language configuration.
- default: The name of the default language used by the project, if no other has been selected by the user.
- enabled: Array with the languages available in the project pages. Notice that the language files must exist in the globals/language/ directory.
'smarty' => array(
'class' => '/usr/share/php/smarty/libs/Smarty.class.php'
You can set the place of the smarty class. If the Smarty library does not exist in your system, please visit http://smarty.php.net/ to download the latest version. Notice that version 2.6.x is recommended.
'constructor' => array(
'max_rows' => 50
You can set the maximun rows displayed per page into tables.
'dns' => array(
'root_zone' => 'yourdomain',
'ns_zone' => 'ns.yourdomain',
'reverse_zone' => 'in-addr.arpa',
'forward_zone_schema' => ROOT_PATH.'tools/dnszones-poller/yourdomain.schema',
'reverse_zone_schema' => ROOT_PATH.'tools/dnszones-poller/10.in-addr.arpa.schema'
This section defines the dns zones configuration.
- root_zone: The top level domain that your network uses.
- ns_zone: The ns subdomain where all nameservers will be placed.
- reverse_zone: The reverse zone. Propably nothing to set here.
- forward_zone_schema & reverse_zone_schema: The schemas used by project to generate the zone files. Be aware to set the read-write properties in the files, so that you can edit them via the administrator panel.
'folders' => array(
'photos' => ROOT_PATH.'files/photos/'
Some folders used by the project.
- photos: The project stores in this folder all the photos provided by the users. Be aware to set the read-write property in the folder, so that the project can have full access.
'mail' => array(
'smtp' => '', // if not set default used from php.ini file
'smtp_port' => '25',
'from' => 'email@example.com',
'from_name' => 'WiND Hostmaster'
This section defines the mail properties.
- smtp & smtp_port: Smtp server and port used by the project to send mails. Notice that this is only for Windows servers. GNU/Linux servers must setup their local mail server (eg. exim).
- from: The from e-mail field for all outgoing e-mails.
- from_name: The name displayed in all outgoing e-mails.
'srtm' => array(
'path' => ROOT_PATH.'files/srtm/'
You can set the path that contains the NASA's SRTM data. You can download the files (that concerns your area) and place them manually into this path. This data files contains the elevation information needed by the project, to plot the line of sight between two nodes.
'gmap' => array(
'server' => 'maps.google.com',
'maps_available' => array(
'satellite' => true,
'map' => false,
'hybrid' => false,
//Sample scripts for custom image map server can be found in the tools subdirectory
/*'custom_maps' => array(
0 => array(
'url' => 'http://server.example.org/maps/index.php?',
'name' => 'Custom1',
'coordinates_type' => 'map'
1 => array(
'url' => 'http://server.example.org/maps/index.php?',
'name' => 'Custom2',
'coordinates_type' => 'satellite'
'default' => 'satellite'
'keys' => array( // Domains must be as in $_SERVER['SERVER_NAME'] variable
'server.example.org/path' => 'example_key'
'bounds' => array(
'min_latitude' => MINLAT_GPS_COORDINATE,
'min_longitude' => MINLON_GPS_COORDINATE,
'max_latitude' => MAXLAT_GPS_COORDINATE,
'max_longitude' => MAXLON_GPS_COORDINATE
This section setups Google Maps.
- server: The server used by the users' browser to download the Google Maps application data.
- maps_available: This setups the maps that are available in the Google Maps interface.
- satellite: Enable/disable satellite type.
- maps: Enable/disable maps type.
- hybrid: Enable/disable hybrid type.
- custom: Set here all the custom maps that you have in array format (0, 1, 2, ...). Remember to uncomment this section to enable them.
- url: The url that returns all images.
- name: The name of the custom map.
- coordinates_type: The coordinates type. It can be satellite (t=????????) or maps (x=???&y=???&z=???) type parameters in the url given above.
- default: The default map used, if no other has been selected by the user. If you want as default a custom map, type custom_NAME, where NAME the name of the custom map.
- keys: Keys for all domains you are using. Visit http://www.google.com/apis/maps/signup.html to get a key. You must set the array name as server/path format without http:// and trailing slash (/).
- bounds: Set the bound of your area that displayed by Google Maps. All bounds are in decimal format (ex. 37.1234567).
'debug' => array(
'enabled' => FALSE
You can enable/disable the WiND debug mode. Actually this is used by developers. You propably don't need it.
Where LANGUAGE replace with the language you want to overwrite values for. You can create these files if you want to overwrite some language values to perfectly customize your site. For example you will probably need to change the 'site_title' or the email contents without touching the original language files. In this way, the updates will be a piece of cake. :-)
Create a file named startup.html into config/ folder. You can place any information in (X)HTML format. This page will be displayed in the first page of the project.
Create a file named mylogo.png into config/ folder. This logo will be displayed by the selected template in the appropriate place (if it is supported).