xref: /dokuwiki/inc/pluginutils.php (revision 54cf085eb4465294c7673c2b4ba348aeac85f508)
1<?php
2/**
3 * Utilities for handling plugins
4 *
5 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
6 * @author     Andreas Gohr <andi@splitbrain.org>
7 */
8
9// plugin related constants
10if(!defined('DOKU_PLUGIN'))  define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
11require_once(DOKU_INC.'inc/plugincontroller.class.php');
12
13$plugin_types = array('admin','syntax','action','renderer', 'helper');
14
15global $plugin_controller_class, $plugin_controller;
16if (empty($plugin_controller_class)) $plugin_controller_class = 'Doku_Plugin_Controller';
17
18$plugin_controller = new $plugin_controller_class();
19
20/**
21 * Original plugin functions, remain for backwards compatibility
22 */
23function plugin_list($type='',$all=false) {
24    global $plugin_controller;
25    return $plugin_controller->getList($type,$all);
26}
27function &plugin_load($type,$name,$new=false) {
28    global $plugin_controller;
29    return $plugin_controller->load($type,$name,$new);
30}
31function plugin_isdisabled($plugin) {
32    global $plugin_controller;
33    return $plugin_controller->isdisabled($plugin);
34}
35function plugin_enable($plugin) {
36    global $plugin_controller;
37    return $plugin_controller->enable($plugin);
38}
39function plugin_disable($plugin) {
40    global $plugin_controller;
41    return $plugin_controller->disable($plugin);
42}
43function plugin_directory($plugin) {
44    global $plugin_controller;
45    return $plugin_controller->get_directory($plugin);
46}
47
48