CWIS Developer Documentation
Public Member Functions | Static Public Member Functions | List of all members
PluginManager Class Reference

Manager to load and invoke plugins. More...

Public Member Functions

 __construct ($AppFramework, $PluginDirectories)
 PluginManager class constructor. More...
 
 LoadPlugins ($ForcePluginConfigOptLoad=FALSE)
 Load and initialize plugins. More...
 
 GetErrorMessages ()
 Retrieve any error messages generated during plugin loading. More...
 
 GetStatusMessages ()
 Get/set any status messages generated during plugin loading or via plugin method calls. More...
 
 GetPlugin ($PluginName)
 Retrieve specified plugin. More...
 
 GetPluginForCurrentPage ()
 Retrieve plugin for current page (if any). More...
 
 GetPluginAttributes ()
 Retrieve info about currently loaded plugins. More...
 
 GetDependents ($PluginName)
 Returns a list of plugins dependent on the specified plugin. More...
 
 GetActivePluginList ()
 Get list of active (i.e. More...
 
 PluginEnabled ($PluginName, $NewValue=NULL)
 Get/set whether specified plugin is enabled. More...
 
 UninstallPlugin ($PluginName)
 Uninstall plugin and (optionally) delete any associated data. More...
 
 FindPluginPhpFile ($PageName)
 
 FindPluginHtmlFile ($PageName)
 

Static Public Member Functions

static CfgSaveCallback ($BaseName, $Cfg)
 

Detailed Description

Manager to load and invoke plugins.

Definition at line 13 of file PluginManager.php.

Constructor & Destructor Documentation

PluginManager::__construct (   $AppFramework,
  $PluginDirectories 
)

PluginManager class constructor.

Parameters
ApplicationFramework$AppFrameworkApplicationFramework within which plugins should run.
array$PluginDirectoriesArray of names of directories containing plugins, in the order they should be searched.

Definition at line 24 of file PluginManager.php.

References PluginCaller\$Manager, and ApplicationFramework\ORDER_LAST.

Member Function Documentation

static PluginManager::CfgSaveCallback (   $BaseName,
  $Cfg 
)
static

Method installed in plugins to allow them to save their configuration information.

Parameters
string$BaseNamePlugin base name.
array$CfgArray of configuration values.

Definition at line 840 of file PluginManager.php.

PluginManager::FindPluginHtmlFile (   $PageName)

Method hooked to EVENT_HTML_FILE_LOAD to find the appropriate HTML file when a plugin page is to be loaded. (This method is not meant to be called directly.)

Parameters
string$PageNameCurrent page name.
Returns
string Parameter array with updated page name (if appropriate).

Definition at line 741 of file PluginManager.php.

PluginManager::FindPluginPhpFile (   $PageName)

Method hooked to EVENT_PHP_FILE_LOAD to find the appropriate PHP file when a plugin page is to be loaded. (This method is not meant to be called directly.)

Parameters
string$PageNameCurrent page name.
Returns
string Parameter array with updated page name (if appropriate).

Definition at line 718 of file PluginManager.php.

PluginManager::GetActivePluginList ( )

Get list of active (i.e.

enabled) plugins.

Returns
Array of base names of active plugins.

Definition at line 335 of file PluginManager.php.

References PluginEnabled().

PluginManager::GetDependents (   $PluginName)

Returns a list of plugins dependent on the specified plugin.

Parameters
string$PluginNameBase name of plugin.
Returns
Array of base names of dependent plugins.

Definition at line 315 of file PluginManager.php.

References GetPluginAttributes().

PluginManager::GetErrorMessages ( )

Retrieve any error messages generated during plugin loading.

Returns
Array of arrays of error messages, indexed by plugin base (class) name.

Definition at line 250 of file PluginManager.php.

PluginManager::GetPlugin (   $PluginName)

Retrieve specified plugin.

Parameters
string$PluginNameBase name of plugin.
Returns
Plugin object or NULL if no plugin found with specified name.

Definition at line 271 of file PluginManager.php.

Referenced by GetPluginForCurrentPage().

Here is the caller graph for this function:

PluginManager::GetPluginAttributes ( )

Retrieve info about currently loaded plugins.

Returns
Array of arrays of plugin info, indexed by plugin base (class) name.

Definition at line 293 of file PluginManager.php.

Referenced by GetDependents().

Here is the caller graph for this function:

PluginManager::GetPluginForCurrentPage ( )

Retrieve plugin for current page (if any).

This method relies on the current page having been found within the plugin directory (usually via a "P_" prefix on the page name) via a call to the hooked FindPluginPhpFile() or FindPluginHtmlFile() methods..

Returns
Plugin object or NULL if no plugin associated with current page.

Definition at line 284 of file PluginManager.php.

References GetPlugin().

PluginManager::GetStatusMessages ( )

Get/set any status messages generated during plugin loading or via plugin method calls.

Returns
Array of arrays of status messages, indexed by plugin base (class) name.

Definition at line 261 of file PluginManager.php.

PluginManager::LoadPlugins (   $ForcePluginConfigOptLoad = FALSE)

Load and initialize plugins.

The $ForcePluginConfigOptLoad value only applies to plugins that use Plugin::SetUpConfigOptions() to set up their configuration options; plugins that set up their config options via Plugin::Register() will always have them set up.

Parameters
bool$ForcePluginConfigOptLoadIf TRUE, configuration options are loaded for all plugins, regardless of whether they are currently enabled. (OPTIONAL, defaults to FALSE)
Returns
TRUE if load was successful (no problems encountered), otherwise FALSE.

Definition at line 53 of file PluginManager.php.

References ApplicationFramework\AddObjectDirectory(), and PluginEnabled().

PluginManager::PluginEnabled (   $PluginName,
  $NewValue = NULL 
)

Get/set whether specified plugin is enabled.

Parameters
string$PluginNameBase name of plugin.
bool$NewValueTRUE to enable, FALSE to disable. (OPTIONAL)
Returns
TRUE if plugin is enabled, otherwise FALSE.

Definition at line 346 of file PluginManager.php.

Referenced by GetActivePluginList(), LoadPlugins(), and UninstallPlugin().

Here is the caller graph for this function:

PluginManager::UninstallPlugin (   $PluginName)

Uninstall plugin and (optionally) delete any associated data.

Parameters
string$PluginNameBase name of plugin.
Returns
Error message or NULL if uninstall succeeded.

Definition at line 375 of file PluginManager.php.

References PluginEnabled().


The documentation for this class was generated from the following file: