Configuration Class

From GeeklogWiki
Revision as of 16:52, 22 June 2008 by LWC (talk | contribs) (function del())

Jump to: navigation, search

Function Reference

Controlling specific values

function add()

This function will add a variable to the database

Parameters:

string $param_name
  name of the parameter to add
mixed  $default_value    
  the default value of the parameter (also will be the initial value)
string $type             
  This is the type of the configuration variable
  If the configuration variable is an array, prefix this string with
      '@' if the administrator should NOT be able to add or remove keys
      '*' if the administrator should be able to add named keys
      '%' if the administrator should be able to add numbered keys
  These symbols can be repeated like such: @@text if the configuration variable is an array of arrays of text.
  The base variable types are:
      'text'    textbox displayed     string  value stored
      'select'  selectbox displayed   string  value stored
      'hidden'  no display            string  value stored
int $subgroup
  subgroup of the variable - the integer is the index of the lang array for the subgroup
int $fieldset
  the fieldset to display the variable under - the integer is the index of the lang array for the fieldset
int  $selection_array
  These are the possible selections for the 'select' type. This MUST be passed if you use the 'select' type - otherwise it will just display a textbox (defaults to NULL) - the integer is the index of the lang array for the selection array 
int    $sort
  sort rank on the user interface (ascending, defaults to 0)
boolean $set            
  Whether or not this parameter is set (defaults to TRUE)
string  $group
  The group (or plugin) for the config option (defaults to "Core")
Adding Plugins' Configuration Parameters

See Configuration Class in plugins.

Adding Global Configuration Parameters

To add global configuration settings to the config, several files must be altered.

First, admin/install/config-install.php must be altered by adding a new $c->add() line. This will also involve adding entries to the core config lang arrays in the language files.

Then, the same $c->add() line must be added to the function create_ConfValues() in the sql/updates/m*sql_1.x_to_1.x.php files.

function set()

This function sets a configuration variable to a value in the database and in the current array. If the variable does not already exist, nothing will happen.

Parameters:

string variable_name
   This is the name of the variable to change
mixed value
   This is the new value for the variable.
string  $group
   The group (or plugin) for the config option (defaults to "Core")

function del()

This function deletes a configuration variable. (If the variable does not already exist, nothing will happen?)

Parameters:

string variable_name
   This is the name of the variable to delete
string  $group
   The group (or plugin) for the config option (defaults to '')

Controlling the overall config

function static get_instance()

This function will return an instance of the config class. If an instance does not exist, then it will create a new one. Only one instance will ever exist.

Parameters:

string group_name
   This is simply the group name that this config object will control - for the main gl settings this is 'Core'

function &get_config()

This returns the config array for the given group.

Parameters:

string $group
   The group (or plugin) for the config array

function config()

This function returns a reference to the core config array.

function &init_config()

This function returns a reference to the configuration variables array (e.g. $_CONF) and initializes the core config values.

function set_configfile()

This function sets the secure configuration file (database related settings) for the configuration class to read. This should only need to be called for the 'Core' group. It also must be called before load_baseconfig()

Parameters:

string $sf
   This is the path and name of the secure configuration file.

function load_baseconfig()

This function reads the secure configuration file and loads lib-database.php. This needs to be called in the 'Core' group before &init_config() can be used. It only needs to be called once.