diff options
author | Adrian Lang <mail@adrianlang.de> | 2011-11-10 15:43:15 +0100 |
---|---|---|
committer | Adrian Lang <mail@adrianlang.de> | 2011-11-10 15:43:15 +0100 |
commit | 16a774a8a61756df2d8fb813bfbaed98b42e3e65 (patch) | |
tree | 3a48d311e74ccbf4017330cef8af00003b0ddb34 /inc/load.php | |
parent | 662a7b3fcc22d8327026bc1ef161a096683f1580 (diff) | |
parent | a5a71ecfcc1ed6bfca1995b39cd0abe4b8dd9eeb (diff) | |
download | rpg-16a774a8a61756df2d8fb813bfbaed98b42e3e65.tar.gz rpg-16a774a8a61756df2d8fb813bfbaed98b42e3e65.tar.bz2 |
Merge branch 'master' into stable
Conflicts:
doku.php
Diffstat (limited to 'inc/load.php')
-rw-r--r-- | inc/load.php | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/inc/load.php b/inc/load.php index ef6f7f31c..d30397f6e 100644 --- a/inc/load.php +++ b/inc/load.php @@ -43,7 +43,7 @@ require_once(DOKU_INC.'inc/auth.php'); * require()s their associated php files when an object is instantiated. * * @author Andreas Gohr <andi@splitbrain.org> - * @todo add generic loading of plugins and other generically named classes + * @todo add generic loading of renderers and auth backends */ function load_autoload($name){ static $classes = null; @@ -87,5 +87,16 @@ function load_autoload($name){ require_once($classes[$name]); return; } + + // Plugin loading + if(preg_match('/^(helper|syntax|action|admin|renderer)_plugin_([^_]+)(?:_([^_]+))?$/', + $name, $m)) { + //try to load the wanted plugin file + // include, but be silent. Maybe some other autoloader has an idea + // how to load this class. + $c = ((count($m) === 4) ? "/{$m[3]}" : ''); + @include DOKU_PLUGIN . "{$m[2]}/{$m[1]}$c.php"; + return; + } } |