Difference between revisions of "Settings.php"

From ARK
Jump to: navigation, search
 
(97 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 +
This is the main settings file for administrators to set defaults for security settings and permissions, loaded modules, etc. for each instance of ARK. As of v1.0, for settings related to page display and navigation see [[page_settings.php]], and those related to server settings see [[env_settings.php]].
  
This is the main settings file for each instance of ARK. The file is divide into sections as set out below
+
==Server Setup==
 
+
The server setup being used (can include"ms4w", "mac", or "linux"):
==Links==
+
<pre>
 +
$server="ms4w";
 +
</pre>
  
This includes the server [[environment settings]].
+
And include the settings related to your server environment contained within the [[env_settings.php]]:
 
<pre>
 
<pre>
 
// Include settings related to your server environment
 
// Include settings related to your server environment
Line 10: Line 13:
 
</pre>
 
</pre>
  
==General==
+
==ARK Name and Markup==
 +
The name of this instance of ARK -  can not contain spaces!
 +
<pre>
 +
// The Ark name
 +
$ark_name = 'Tutorial';
 +
</pre>
 +
The name of this instance of ARK -  as markup. Appears on the index (home) page and in the browser window/tab title. Should be entered in cor_tbl_markup accordingly.
 +
<pre>
 +
// The nickname for the markup ARK name that appears on the index page and
 +
// as browser window/tab title
 +
$arkname_mk = 'arkname';
 +
</pre>
  
This sets the display name of the ARK instance. Used in page titles etc.
+
==Live Search==
 +
The controls for the live search function
 
<pre>
 
<pre>
// The Ark name
+
// Live search controls
$ark_name = 'FASTI admin';
+
/*
 +
* live = live search
 +
* dd = drop down menu
 +
* plain = plain text search
 +
*/
 +
$mode = "live";
 
</pre>
 
</pre>
  
The folder name of THIS instance of Ark (relative to the document root of the host in which it is hosted)
+
'''NB- Controls for xmi live search should not be included in the global settings, this has been moved to the subform configuration as of v0.7'''
 +
 
 +
<strike>Also the controls for live search for XMI </strike>
 
<pre>
 
<pre>
// The folder name of THIS instance of Ark (relative to the document root of the host in which it is hosted)
+
// Live search controls for xmi
$ark_dir = '/v2/';
+
/*
 +
* live = live search - this should only be set to live if you are using the collapsing data entry
 +
* dd = drop down menu
 +
* plain = plain text search
 +
*/
 +
$xmi_mode = "live";
 +
</pre>
 +
 
 +
==Fancy Text Search==
 +
The controls for fancy text search, using boolean functions such as +, -, "search term", etc (like Google).
 
<pre>
 
<pre>
 +
// Free text search mode
 +
/*
 +
* fancy - this allows complex search options such as +, -, "" (like Google!)
 +
* plain = plain free text search, no fancy options
 +
*/
 +
$ftx_mode = "fancy";
 +
</pre>
  
A list of loaded modules
+
==Modules==
 +
Configure the modules to be used in this ARK project:
 
<pre>
 
<pre>
//array of loaded modules
+
// List the modules that need to be loaded in this ARK project
 
$loaded_modules =  
 
$loaded_modules =  
 
     array(
 
     array(
         'fst',
+
'abk', // address book
         'sea',
+
         'cxt', // contexts
        'bib',
+
         'pln', // plans
         'rpt',
+
'smp', // samples
         'abk',
+
         'spf', // Special finds
 +
         'sph', // Site photos
 +
       
 
);
 
);
 
</pre>
 
</pre>
  
A default itemkey. Not essential but handy in guessing the itemkey sometimes.
+
Also configure the modules to load mapping data:
 
<pre>
 
<pre>
// The default item key for this instance of Ark.
+
// Lists the modules to load maps for
$default_itemkey = 'fst_cd';
+
$loaded_map_mods =  
 +
    array(
 +
        'cxt', // context
 +
'smp', // samples
 +
);
 
</pre>
 
</pre>
  
==Database==
+
Set the default item key for this ARK setup:
 +
<pre>
 +
// The default item key for this instance of Ark - format: mod_cd
 +
$default_itemkey = 'cxt_cd'; // context
 +
</pre>
  
 +
Set the DSN for this ARK (this should generally NOT need adjusting)
 
<pre>
 
<pre>
// DATABASE
+
// DSN (this shouldn't need adjusting)
// The mysql db name of this instance of ark
 
$ark_db = 'fasti_db2';
 
// The mysqlserver
 
$sql_server = 'localhost';
 
// The mysql user who will make all the db calls
 
$sql_user = 'sql_php_user';
 
// The mysql user's password
 
$sql_pwd = 'test';
 
// DSN (this shouldn;t need adjusting)
 
 
$dsn = 'mysql://'.$sql_user.':'.$sql_pwd.'@'.$sql_server.'/'.$ark_db;
 
$dsn = 'mysql://'.$sql_user.':'.$sql_pwd.'@'.$sql_server.'/'.$ark_db;
 
</pre>
 
</pre>
  
==Security==
+
==Security and Permissions==
 
+
The security and permissions for ARK is handled by LiveUser. 
 +
===Security===
 +
The liveuser settings need to be set, as well as the variables for allowing anonymous logins. The liveuser configuration is as follows:
 
<pre>
 
<pre>
/*SECURITY
+
// -- SECURITY -- //
*these are the names of the liveuser objects. They should be unique per ARK  
+
// Liveuser:
*(to prevent cross ark hacking). They need to be called in the code as
+
// These are the names of the liveuser objects. They should be unique per ARK  
* $$liveuser and $$liveuser_admin
+
// (to prevent cross ark hacking). They need to be called in the code as
*/
+
// $$liveuser and $$liveuser_admin
 
$liveuser = $ark_name . 'usr';
 
$liveuser = $ark_name . 'usr';
 
$liveuser_admin = $ark_name . 'usr' . '_admin';
 
$liveuser_admin = $ark_name . 'usr' . '_admin';
//the path to the login script (relative to the document root)
+
// The path to the login script (relative to the document root)
 
$loginScript = 'index.php';
 
$loginScript = 'index.php';
//Anonymous Logins
+
 
//If these variables are set then you are allowing anonymous logins
+
// Anonymous Logins
//This is a security risk! Its best to leave these statements commented out.
+
// If these variables are set then you are allowing anonymous logins
//Bear in mind that this does not need to be a real user.
+
// This is a security risk! Its best to leave these statements commented out.
//$anonymous_login['username'] = 'anon';
+
// Bear in mind that for this to work - you will also need to make a new user (using the ARK user_admin tools).
//$anonymous_login['password'] = 'anon';
+
$anonymous_login['username'] = 'anon';
 +
$anonymous_login['password'] = 'anon';
 
</pre>
 
</pre>
  
==Skin==
+
===Permissions===
 +
A variety of permissions need to be set to ensure the appropriate users are making use of advanced functions. All permissions are based on the numerical id of security groups (from the cor_lvu_groups table). For instance, it is possible to  allow some users to make their personal saved filters public for all to use. As of v0.8, adding to control lists (adding attributes), and perhaps most importantly, advanced record functions such as edit module types and delete entire records need to also have sgrps defined.
 +
<pre>
 +
// Filter permissions
 +
// Members of the following (sgrp) groups will have permission to make their own filters public
 +
// and permission to make other users (and their own) filters got private
 +
$ftr_admin_grps =
 +
    array(
 +
        1
 +
);
  
<pre>
+
// Control list permissions
// SKIN
+
// Members of the following (sgrp) groups will have permission to add items to controlled lists
// Skin name
+
$ctrllist_admin_grps =
$skin = 'fasti';
+
    array(
// Skin path
+
        1
$skin_path = "$ark_dir"."skins/$skin";
+
);
 +
// Record admin permissions
 +
// Members of the following (sgrp) groups will have access to the advanced record functions
 +
$record_admin_grps =
 +
    array(
 +
        2
 +
);
 
</pre>
 
</pre>
  
 
==Forms==
 
==Forms==
 
+
===Form Methods===
 +
Choose between 'get' or 'post' form methods.
 +
<pre>
 +
// -- FORMS -- //
 +
// Method used in forms:
 +
// get = form messages sent via get method - visible in browser bar.
 +
// post = form message sent via post method - invisible to the user.
 +
$form_method = 'get';
 +
</pre>
 +
===Form Defaults===
 +
Set default year and site code for data entry and viewing:
 
<pre>
 
<pre>
// FORMS
 
 
//Default year as a setting for form data entry
 
//Default year as a setting for form data entry
$default_year = '2005';
+
$default_year = '2008';
 
//Default site code
 
//Default site code
$default_site_cd = 'AIAC';
+
$default_site_cd = 'PCO06';
 
</pre>
 
</pre>
  
==Viewers==
+
==Skin==
 
+
Sets the skin name and skin path for this ARK project:
 
<pre>
 
<pre>
// VIEWERS
+
// Skin name
// FIXME: make this an option of the table setup array
+
$skin = 'arkologik';
// Number of rows to display on the data viewer
+
// Skin path
$conf_viewer_rows = 15;
+
$skin_path = "$ark_dir/skins/$skin";
// Default Micro viewer page (used by search result handlers)
 
$conf_micro_viewer = $ark_dir."micro_view.php";
 
// Default data viewer page
 
$conf_data_viewer = $ark_dir."data_view.php";
 
// Default search page - search funtions will send data thru to this page
 
$conf_search_viewer = $ark_dir."data_view.php";
 
//Default $output_mode for the data viewer
 
$default_output_mode = 'tbl';
 
 
</pre>
 
</pre>
  
==Mapping==
+
==Thumbnails==
 
+
Sets thumbnail sizes for ARK (this will be used when uploading files)
 
<pre>
 
<pre>
// MAPPING
+
// Optional
// Path to clarent (web)
+
$thumbnail_sizes =
$clarent_path = "clarent/0_6/clarent";
+
    array(
// Path to data directory (server)
+
        'arkthumb_width' => 100,
$ark_mapdata_dir = '/srv/www/htdocs/fasti/'.$ark_dir.'mapserver/data/';
+
        'arkthumb_height' => 100,
// Path to temp directory (server)
+
        'webthumb_width' => 500,
$ark_maptemp_dir = '/srv/www/htdocs/fasti/'.$ark_dir.'mapserver/tmp/';
+
        'webthumb_height' => 500
// Path to temp directory (web)
+
);
$ark_web_maptemp_dir = 'mapserver/tmp/';
 
// Default maptype (STU WHATS THIS)
 
$default_maptype = 1;
 
// Path to base_map (server)
 
$default_base_map = '/srv/www/htdocs/fasti/'.$ark_dir.'mapserver/mapfiles/base.map';
 
//$default_base_map = '/srv/www/htdocs/fasti/mapserver/base.map';
 
// Path to WMS mapfile (server)
 
$wms_map = '/srv/www/htdocs/fasti/'.$ark_dir.'mapserver/mapfiles/fasti_wms.map';
 
// Path to WFS mapfile (server)
 
$wfs_map = '/srv/www/htdocs/fasti/'.$ark_dir.'mapserver/mapfiles/fasti_wfs.map';
 
//spatial modules - these are the modules that have geometry
 
$spat_mods = array('cor');
 
 
</pre>
 
</pre>
 +
  
 
==Logging==
 
==Logging==
 
+
Configures logging levels to record logging into database and changes to data. Set to 'on' to turn the logging on, otherwise set to FALSE.
 
<pre>
 
<pre>
// LOGGING
 
 
//Logging levels
 
//Logging levels
 
$conf_log_add = 'on';
 
$conf_log_add = 'on';
Line 152: Line 200:
  
 
==Search Engine==
 
==Search Engine==
 
+
Configures words to cut out of multi-string searches to streamline the search process and maximise results.
 
<pre>
 
<pre>
// SEARCH ENGINE
 
 
// words to cut out of multi string searches
 
// words to cut out of multi string searches
 
$conf_non_search_words = array('and', 'di', 'in');
 
$conf_non_search_words = array('and', 'di', 'in');
Line 160: Line 207:
  
 
==Languages==
 
==Languages==
 
+
Configures the default language and other languages in use.
 
<pre>
 
<pre>
// LANGUAGES
 
 
// The default lang
 
// The default lang
 
$default_lang = 'en';
 
$default_lang = 'en';
 
// These are the languages in use (in order)
 
// These are the languages in use (in order)
$conf_langs = array('en', 'it', 'ro', 'mk');
+
$conf_langs = array('en', 'da');
 
</pre>
 
</pre>
  
 
==Fields==
 
==Fields==
 
+
Used to include the [[field_settings.php]] file.
 
<pre>
 
<pre>
// FIELDS
 
 
include_once('field_settings.php');
 
include_once('field_settings.php');
 
</pre>
 
</pre>
  
==Doctype==
+
==Document Type==
 
+
Configures the document type to use for web output
 
<pre>
 
<pre>
// DOCTYPE
 
// The doctype to use for web output
 
 
$doctype = "html \n
 
$doctype = "html \n
 
     PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n
 
     PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n
Line 186: Line 229:
 
</pre>
 
</pre>
  
==Navigation Links==
+
[[Category: Administrator]]
 
 
<pre>
 
// NAV LINKS
 
// these links will appear in the end of the navbar
 
$conf_linklist =
 
    array(
 
        'file' => 'index.php',
 
        'vars' => 'logout=true',
 
        'label' => 'logout'
 
);
 
</pre>
 
 
 
==Navigation Pages==
 
 
 
<pre>
 
// NAV PAGES
 
// unless listed in this array, all pages will appear int he main nav
 
$conf_hide_pages =
 
    array(
 
        'index.php',
 
        'record_view.php',
 
        'contact.php',
 
        'about.php',
 
        'search.php',
 
        'folder.php',
 
        'export.php'
 
);
 
</pre>
 
 
 
 
 
[[category: Administrator]]
 

Latest revision as of 15:49, 21 March 2012

This is the main settings file for administrators to set defaults for security settings and permissions, loaded modules, etc. for each instance of ARK. As of v1.0, for settings related to page display and navigation see page_settings.php, and those related to server settings see env_settings.php.

Server Setup

The server setup being used (can include"ms4w", "mac", or "linux"):

$server="ms4w";

And include the settings related to your server environment contained within the env_settings.php:

// Include settings related to your server environment
include('env_settings.php');

ARK Name and Markup

The name of this instance of ARK - can not contain spaces!

// The Ark name
$ark_name = 'Tutorial';

The name of this instance of ARK - as markup. Appears on the index (home) page and in the browser window/tab title. Should be entered in cor_tbl_markup accordingly.

// The nickname for the markup ARK name that appears on the index page and
// as browser window/tab title
$arkname_mk = 'arkname';

Live Search

The controls for the live search function

// Live search controls 
/*
* live = live search 
* dd = drop down menu
* plain = plain text search
*/
$mode = "live";

NB- Controls for xmi live search should not be included in the global settings, this has been moved to the subform configuration as of v0.7

Also the controls for live search for XMI

// Live search controls for xmi
/*
* live = live search - this should only be set to live if you are using the collapsing data entry
* dd = drop down menu
* plain = plain text search
*/
$xmi_mode = "live";

Fancy Text Search

The controls for fancy text search, using boolean functions such as +, -, "search term", etc (like Google).

// Free text search mode
/*
* fancy - this allows complex search options such as +, -, "" (like Google!)
* plain = plain free text search, no fancy options
*/
$ftx_mode = "fancy";

Modules

Configure the modules to be used in this ARK project:

// List the modules that need to be loaded in this ARK project
$loaded_modules = 
    array(
	'abk', // address book
        'cxt', // contexts
        'pln', // plans
	'smp', // samples
        'spf', // Special finds
        'sph', // Site photos
        
);

Also configure the modules to load mapping data:

// Lists the modules to load maps for
$loaded_map_mods = 
    array(
        'cxt', // context
	'smp', // samples
);

Set the default item key for this ARK setup:

// The default item key for this instance of Ark - format: mod_cd
$default_itemkey = 'cxt_cd'; // context

Set the DSN for this ARK (this should generally NOT need adjusting)

// DSN (this shouldn't need adjusting)
$dsn = 'mysql://'.$sql_user.':'.$sql_pwd.'@'.$sql_server.'/'.$ark_db;

Security and Permissions

The security and permissions for ARK is handled by LiveUser.

Security

The liveuser settings need to be set, as well as the variables for allowing anonymous logins. The liveuser configuration is as follows:

// -- SECURITY -- //
// Liveuser: 
// These are the names of the liveuser objects. They should be unique per ARK 
// (to prevent cross ark hacking). They need to be called in the code as
// $$liveuser and $$liveuser_admin
$liveuser = $ark_name . 'usr';
$liveuser_admin = $ark_name . 'usr' . '_admin';
// The path to the login script (relative to the document root)
$loginScript = 'index.php';

// Anonymous Logins
// If these variables are set then you are allowing anonymous logins
// This is a security risk! Its best to leave these statements commented out.
// Bear in mind that for this to work - you will also need to make a new user (using the ARK user_admin tools).
$anonymous_login['username'] = 'anon';
$anonymous_login['password'] = 'anon';

Permissions

A variety of permissions need to be set to ensure the appropriate users are making use of advanced functions. All permissions are based on the numerical id of security groups (from the cor_lvu_groups table). For instance, it is possible to allow some users to make their personal saved filters public for all to use. As of v0.8, adding to control lists (adding attributes), and perhaps most importantly, advanced record functions such as edit module types and delete entire records need to also have sgrps defined.

// Filter permissions
// Members of the following (sgrp) groups will have permission to make their own filters public
// and permission to make other users (and their own) filters got private
$ftr_admin_grps =
    array(
        1
);

// Control list permissions
// Members of the following (sgrp) groups will have permission to add items to controlled lists
$ctrllist_admin_grps =
    array(
        1
);
// Record admin permissions
// Members of the following (sgrp) groups will have access to the advanced record functions
$record_admin_grps =
    array(
        2
);

Forms

Form Methods

Choose between 'get' or 'post' form methods.

// -- FORMS -- //
// Method used in forms:
// get = form messages sent via get method - visible in browser bar.
// post = form message sent via post method - invisible to the user.
$form_method = 'get';

Form Defaults

Set default year and site code for data entry and viewing:

//Default year as a setting for form data entry
$default_year = '2008';
//Default site code
$default_site_cd = 'PCO06';

Skin

Sets the skin name and skin path for this ARK project:

// Skin name
$skin = 'arkologik';
// Skin path
$skin_path = "$ark_dir/skins/$skin";

Thumbnails

Sets thumbnail sizes for ARK (this will be used when uploading files)

// Optional
$thumbnail_sizes =
    array(
        'arkthumb_width' => 100,
        'arkthumb_height' => 100,
        'webthumb_width' => 500,
        'webthumb_height' => 500
);


Logging

Configures logging levels to record logging into database and changes to data. Set to 'on' to turn the logging on, otherwise set to FALSE.

//Logging levels
$conf_log_add = 'on';
$conf_log_edt = 'on';
$conf_log_del = 'on';

Search Engine

Configures words to cut out of multi-string searches to streamline the search process and maximise results.

// words to cut out of multi string searches
$conf_non_search_words = array('and', 'di', 'in');

Languages

Configures the default language and other languages in use.

// The default lang
$default_lang = 'en';
// These are the languages in use (in order)
$conf_langs = array('en', 'da');

Fields

Used to include the field_settings.php file.

include_once('field_settings.php');

Document Type

Configures the document type to use for web output

$doctype = "html \n
     PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n
     \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\"";