Files
oav/dotclear._no/inc/core/class.dc.plugins.php
2023-03-20 12:18:38 +01:00

58 lines
1.7 KiB
PHP

<?php
/**
* @brief Plugins specific handler
*
* An instance of this class is provided by dcCore $plugins property
* and used for plugins.
*
* @package Dotclear
* @subpackage Core
*
* @copyright Olivier Meunier & Association Dotclear
* @copyright GPL-2.0-only
*
* @since 2.6
*/
if (!defined('DC_RC_PATH')) {return;}
/**
@ingroup DC_CORE
*/
class dcPlugins extends dcModules
{
protected static $type = 'plugin';
/**
This method registers a plugin in modules list. You should use this to
register a new plugin.
<var>$priority</var> is an integer. Modules are sorted by priority and name.
Lowest priority comes first. This property is currently ignored when dealing
with themes.
@param name <b>string</b> Module name
@param desc <b>string</b> Module description
@param author <b>string</b> Module author name
@param version <b>string</b> Module version
@param properties <b>array</b> extra properties (currently available keys : permissions, priority, standalone_config, type)
*/
public function registerModule($name, $desc, $author, $version, $properties = [])
{
# Fallback to legacy registerModule parameters
if (!is_array($properties)) {
$args = func_get_args();
$properties = [];
if (isset($args[4])) {
$properties['permissions'] = $args[4];
}
if (isset($args[5])) {
$properties['priority'] = (integer) $args[5];
}
}
parent::registerModule($name, $desc, $author, $version, $properties);
}
}