From 67f9913d4a386fe65c9e72ca452b0fa91b010b12 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Fri, 15 Jan 2010 12:18:43 +0100 Subject: removed deprecated PHP4 construct Assigning the return value of new by reference is deprecated, PHP5's new automatically assigns by reference --- inc/parserutils.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'inc/parserutils.php') diff --git a/inc/parserutils.php b/inc/parserutils.php index e2dd85979..471d46903 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -204,10 +204,10 @@ function p_get_instructions($text){ $modes = p_get_parsermodes(); // Create the parser - $Parser = & new Doku_Parser(); + $Parser = new Doku_Parser(); // Add the Handler - $Parser->Handler = & new Doku_Handler(); + $Parser->Handler = new Doku_Handler(); //add modes to parser foreach($modes as $mode){ @@ -416,7 +416,7 @@ function p_render_metadata($id, $orig){ } // set up the renderer - $renderer = & new Doku_Renderer_metadata(); + $renderer = new Doku_Renderer_metadata(); $renderer->meta = $orig['current']; $renderer->persistent = $orig['persistent']; @@ -587,7 +587,7 @@ function & p_get_renderer($mode) { msg("Renderer '$rname' for $mode not valid",-1); return null; } - $Renderer = & new $rclass(); + $Renderer = new $rclass(); }else{ // Maybe a plugin/component is available? list($plugin, $component) = $plugin_controller->_splitName($rname); -- cgit v1.2.3 From 16905344219a6293705b71cd526fad3ba07b04eb Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 31 Jan 2010 19:02:14 +0100 Subject: first attempt to centralize all include loading Classes are loaded throug PHP5's class autoloader, all other includes are just loaded by default. This skips a lot of require_once calls. Parser and Plugin stuff isn't handled by the class loader yet. --- inc/parserutils.php | 4 ---- 1 file changed, 4 deletions(-) (limited to 'inc/parserutils.php') diff --git a/inc/parserutils.php b/inc/parserutils.php index 471d46903..34d9e5282 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -8,10 +8,6 @@ */ if(!defined('DOKU_INC')) die('meh.'); -require_once(DOKU_INC.'inc/confutils.php'); -require_once(DOKU_INC.'inc/pageutils.php'); -require_once(DOKU_INC.'inc/pluginutils.php'); -require_once(DOKU_INC.'inc/cache.php'); /** * Returns the parsed Wikitext in XHTML for the given id and revision. -- cgit v1.2.3 From 0af14a6e25ba35e88d96762bc73325838868e3fe Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Mon, 1 Feb 2010 15:38:41 +0100 Subject: removed more unneeded require_once() calls --- inc/parserutils.php | 2 -- 1 file changed, 2 deletions(-) (limited to 'inc/parserutils.php') diff --git a/inc/parserutils.php b/inc/parserutils.php index 34d9e5282..8e2c6e000 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -644,8 +644,6 @@ function p_xhtml_cached_geshi($code, $language, $wrapper='pre') { } else { - require_once(DOKU_INC . 'inc/geshi.php'); - $geshi = new GeSHi($code, $language, DOKU_INC . 'inc/geshi'); $geshi->set_encoding('utf-8'); $geshi->enable_classes(); -- cgit v1.2.3 From 3b7488710df8a72be396293874215445851b66b9 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 3 Feb 2010 21:18:56 +0100 Subject: cast 2nd param to array when executing render instructions FS#1880 --- inc/parserutils.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'inc/parserutils.php') diff --git a/inc/parserutils.php b/inc/parserutils.php index 471d46903..631e4149c 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -423,7 +423,7 @@ function p_render_metadata($id, $orig){ // loop through the instructions foreach ($instructions as $instruction){ // execute the callback against the renderer - call_user_func_array(array(&$renderer, $instruction[0]), $instruction[1]); + call_user_func_array(array(&$renderer, $instruction[0]), (array) $instruction[1]); } $evt->result = array('current'=>$renderer->meta,'persistent'=>$renderer->persistent); -- cgit v1.2.3 From ebf65d37ec50cce097ad8cddfb43acc5ea5aea21 Mon Sep 17 00:00:00 2001 From: Adrian Lang Date: Wed, 17 Mar 2010 16:40:36 +0100 Subject: Rewrite p_get_metadata to not issue a E_Notice --- inc/parserutils.php | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'inc/parserutils.php') diff --git a/inc/parserutils.php b/inc/parserutils.php index 4102ee711..cb8bc079d 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -222,7 +222,7 @@ function p_get_instructions($text){ * * @author Esther Brunner */ -function p_get_metadata($id, $key=false, $render=false){ +function p_get_metadata($id, $key='', $render=false){ global $ID, $INFO, $cache_metadata; // cache the current page @@ -241,19 +241,17 @@ function p_get_metadata($id, $key=false, $render=false){ if (!empty($INFO) && ($id == $INFO['id'])) { $INFO['meta'] = $meta['current']; } } - // filter by $key - if ($key){ - list($key, $subkey) = explode(' ', $key, 2); - $subkey = trim($subkey); + $val = $meta['current']; - if ($subkey) { - return isset($meta['current'][$key][$subkey]) ? $meta['current'][$key][$subkey] : null; + // filter by $key + foreach(explode(' ', trim($key), 2) as $cur_key) { + $cur_key = trim($cur_key); + if (!isset($val[$cur_key])) { + return null; } - - return isset($meta['current'][$key]) ? $meta['current'][$key] : null; + $val = $val[$cur_key]; } - - return $meta['current']; + return $val; } /** -- cgit v1.2.3 From 569a001959f65aea2c0e7cd3dd5b541cac0e9e58 Mon Sep 17 00:00:00 2001 From: Adrian Lang Date: Fri, 26 Mar 2010 14:10:46 +0100 Subject: Fix and simplify p_get_metadata key looping explode converts $string (false) to string ("") and returns it if $delimiter is not found, therefor looking for the key "" in metadata array. --- inc/parserutils.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'inc/parserutils.php') diff --git a/inc/parserutils.php b/inc/parserutils.php index cb8bc079d..4bec3ab1d 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -244,8 +244,7 @@ function p_get_metadata($id, $key='', $render=false){ $val = $meta['current']; // filter by $key - foreach(explode(' ', trim($key), 2) as $cur_key) { - $cur_key = trim($cur_key); + foreach(preg_split('/\s+/', $key, 2, PREG_SPLIT_NO_EMPTY) as $cur_key) { if (!isset($val[$cur_key])) { return null; } -- cgit v1.2.3 From f6ec8df813b28547ca3b04bb39f0ce670a6bb990 Mon Sep 17 00:00:00 2001 From: Adrian Lang Date: Mon, 29 Mar 2010 12:00:30 +0200 Subject: Allow plugins to specify that they have to be instantiated Plugins may return false in isSingleton to let plugin_load return a new instance every time it is called. Renderer plugins are not loaded with $new set to true, but instead specify themself that they are not singletons. This behaviour allows the odt renderer to keep working (see #1598). --- inc/parserutils.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'inc/parserutils.php') diff --git a/inc/parserutils.php b/inc/parserutils.php index 4bec3ab1d..35ccdc1d6 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -585,7 +585,7 @@ function & p_get_renderer($mode) { // Maybe a plugin/component is available? list($plugin, $component) = $plugin_controller->_splitName($rname); if (!$plugin_controller->isdisabled($plugin)){ - $Renderer =& $plugin_controller->load('renderer',$rname, true); + $Renderer =& $plugin_controller->load('renderer',$rname); } if(is_null($Renderer)){ -- cgit v1.2.3