diff options
author | Sem <sembrestels@riseup.net> | 2013-11-09 16:13:46 +0100 |
---|---|---|
committer | Sem <sembrestels@riseup.net> | 2013-11-09 16:13:46 +0100 |
commit | e2a2fbdccaf0f48878903f448428cab5852d0870 (patch) | |
tree | 9cbe6b74c8e2e191ec65fba78d7435af35506f82 /mod/dokuwiki/vendors/dokuwiki/lib/plugins/odt/action.php | |
parent | 59448d8a9864573c05477a63a6dda404c455fdb6 (diff) | |
parent | b603da53e13005c67d05efac67b70023dfffc450 (diff) | |
download | elgg-e2a2fbdccaf0f48878903f448428cab5852d0870.tar.gz elgg-e2a2fbdccaf0f48878903f448428cab5852d0870.tar.bz2 |
Add 'mod/dokuwiki/' from commit 'b603da53e13005c67d05efac67b70023dfffc450'
git-subtree-dir: mod/dokuwiki
git-subtree-mainline: 59448d8a9864573c05477a63a6dda404c455fdb6
git-subtree-split: b603da53e13005c67d05efac67b70023dfffc450
Diffstat (limited to 'mod/dokuwiki/vendors/dokuwiki/lib/plugins/odt/action.php')
-rw-r--r-- | mod/dokuwiki/vendors/dokuwiki/lib/plugins/odt/action.php | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/mod/dokuwiki/vendors/dokuwiki/lib/plugins/odt/action.php b/mod/dokuwiki/vendors/dokuwiki/lib/plugins/odt/action.php new file mode 100644 index 000000000..0ca861518 --- /dev/null +++ b/mod/dokuwiki/vendors/dokuwiki/lib/plugins/odt/action.php @@ -0,0 +1,41 @@ +<?php +/** + * ODT Plugin: Exports to ODT + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Aurelien Bompard <aurelien@bompard.org> + */ +// must be run within Dokuwiki +if(!defined('DOKU_INC')) die(); + +if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); +require_once(DOKU_PLUGIN.'action.php'); + +/** + * Add the template as a page dependency for the caching system + */ +class action_plugin_odt extends DokuWiki_Action_Plugin { + + function register($controller) { + $controller->register_hook('PARSER_CACHE_USE','BEFORE', $this, 'handle_cache_prepare'); + } + + function handle_cache_prepare(&$event, $param) { + global $conf, $ID; + $cache =& $event->data; + // only the ODT rendering mode needs caching tweaks + if ($cache->mode != "odt") return; + $odt_meta = p_get_metadata($ID, 'relation odt'); + $template_name = $odt_meta["template"]; + if (!$template_name) { + return; + } + $template_path = $conf['mediadir'].'/'.$this->getConf("tpl_dir")."/".$template_name; + if (file_exists($template_path)) { + $cache->depends['files'][] = $template_path; + } + } + +} + +//Setup VIM: ex: et ts=4 enc=utf-8 : |