summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Lang <lang@cosmocode.de>2010-03-10 10:41:32 +0100
committerAdrian Lang <lang@cosmocode.de>2010-03-10 10:53:49 +0100
commitfe17917e7668864526ec0f0ae65dd0787831d8a4 (patch)
tree667b9cf4605536b83b1949bd2f4d105f38c78176
parent8d67c48ac883f874037848be833920f4a6426995 (diff)
downloadrpg-fe17917e7668864526ec0f0ae65dd0787831d8a4.tar.gz
rpg-fe17917e7668864526ec0f0ae65dd0787831d8a4.tar.bz2
Move & rename HTML_PAGE_FROMTEMPLATE to common.php
The new COMMON_PAGE_FROMTEMPLATE is triggered by pageTemplate AFTER the template has been read but before performing the template replacements.
-rw-r--r--inc/actions.php3
-rw-r--r--inc/common.php17
-rw-r--r--inc/html.php1
-rw-r--r--lib/exe/xmlrpc.php3
4 files changed, 14 insertions, 10 deletions
diff --git a/inc/actions.php b/inc/actions.php
index 01d1d29d4..6ce67eb9a 100644
--- a/inc/actions.php
+++ b/inc/actions.php
@@ -474,8 +474,7 @@ function act_edit($act){
$TEXT = rawWiki($ID,$REV);
}
} else {
- $data = array($ID);
- $TEXT = trigger_event('HTML_PAGE_FROMTEMPLATE',$data,'pageTemplate',true);
+ $TEXT = pageTemplate($ID);
}
}
diff --git a/inc/common.php b/inc/common.php
index 0d5efbee9..6601ae478 100644
--- a/inc/common.php
+++ b/inc/common.php
@@ -809,14 +809,16 @@ function rawWiki($id,$rev=''){
/**
* Returns the pagetemplate contents for the ID's namespace
*
+ * @triggers COMMON_PAGE_FROMTEMPLATE
* @author Andreas Gohr <andi@splitbrain.org>
*/
-function pageTemplate($data){
- $id = $data[0];
+function pageTemplate($id){
global $conf;
- $path = dirname(wikiFN($id));
+ if (is_array($id)) $id = $id[0];
+ $path = dirname(wikiFN($id));
+ $tpl = '';
if(@file_exists($path.'/_template.txt')){
$tpl = io_readFile($path.'/_template.txt');
}else{
@@ -830,15 +832,20 @@ function pageTemplate($data){
$path = substr($path, 0, strrpos($path, '/'));
}
}
- return isset($tpl) ? parsePageTemplate($tpl, $id) : '';
+ $data = compact('tpl', 'id');
+ trigger_event('COMMON_PAGE_FROMTEMPLATE', $data, 'parsePageTemplate', true);
+ return $data['tpl'];
}
/**
* Performs common page template replacements
+ * This is the default action for COMMON_PAGE_FROMTEMPLATE
*
* @author Andreas Gohr <andi@splitbrain.org>
*/
-function parsePageTemplate($tpl, $id) {
+function parsePageTemplate($data) {
+ extract($data);
+
global $USERINFO;
global $conf;
diff --git a/inc/html.php b/inc/html.php
index ae3e56e0a..cfa4dbe3d 100644
--- a/inc/html.php
+++ b/inc/html.php
@@ -1127,7 +1127,6 @@ function html_updateprofile(){
/**
* Preprocess edit form data
*
- * @triggers HTML_PAGE_FROMTEMPLATE
* @author Andreas Gohr <andi@splitbrain.org>
*/
function html_edit(){
diff --git a/lib/exe/xmlrpc.php b/lib/exe/xmlrpc.php
index a29a40612..155812d22 100644
--- a/lib/exe/xmlrpc.php
+++ b/lib/exe/xmlrpc.php
@@ -290,8 +290,7 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
}
$text = rawWiki($id,$rev);
if(!$text) {
- $data = array($id);
- return trigger_event('HTML_PAGE_FROMTEMPLATE',$data,'pageTemplate',true);
+ return pageTemplate($id);
} else {
return $text;
}