diff --git a/e107_handlers/e_parse_class.php b/e107_handlers/e_parse_class.php
index fb4880f1a..422e59e1d 100644
--- a/e107_handlers/e_parse_class.php
+++ b/e107_handlers/e_parse_class.php
@@ -9,8 +9,8 @@
* Text processing and parsing functions
*
* $Source: /cvs_backup/e107_0.8/e107_handlers/e_parse_class.php,v $
-* $Revision: 1.57 $
-* $Date: 2009-08-19 14:39:57 $
+* $Revision: 1.58 $
+* $Date: 2009-08-20 12:27:26 $
* $Author: secretr $
*
*/
@@ -1184,26 +1184,22 @@ class e_parse
//
// only an ADMIN user can convert {e_ADMIN}
//
- function replaceConstants($text, $mode = "", $all = false)
+ function replaceConstants($text, $mode = '', $all = false)
{
if($mode != "")
{
- global $IMAGES_DIRECTORY, $PLUGINS_DIRECTORY, $FILES_DIRECTORY,
- $THEMES_DIRECTORY, $DOWNLOADS_DIRECTORY, $ADMIN_DIRECTORY, $HANDLERS_DIRECTORY;
-
$e107 = e107::getInstance();
- //FIXME - replace globals like this $e107->e107_dirs['IMAGES_DIRECTORY']
$replace_relative = array(
- "",
- SITEURL.$IMAGES_DIRECTORY,
- SITEURL.$THEMES_DIRECTORY,
- $IMAGES_DIRECTORY,
- $PLUGINS_DIRECTORY,
- $FILES_DIRECTORY,
- $THEMES_DIRECTORY,
- $DOWNLOADS_DIRECTORY,
- $HANDLERS_DIRECTORY
+ '',
+ SITEURL.$e107->getFolder('images'),
+ SITEURL.$e107->getFolder('themes'),
+ $e107->getFolder('images'),
+ $e107->getFolder('plugins'),
+ $e107->getFolder('files'),
+ $e107->getFolder('themes'),
+ $e107->getFolder('downloads'),
+ $e107->getFolder('handlers')
);
switch ($mode)
@@ -1225,14 +1221,14 @@ class e_parse
case 'full':
$replace_absolute = array(
SITEURL,
- SITEURL.$IMAGES_DIRECTORY,
- SITEURL.$THEMES_DIRECTORY,
- SITEURL.$IMAGES_DIRECTORY,
- SITEURL.$PLUGINS_DIRECTORY,
- SITEURL.$FILES_DIRECTORY,
- SITEURL.$THEMES_DIRECTORY,
- SITEURL.$DOWNLOADS_DIRECTORY,
- SITEURL.$HANDLERS_DIRECTORY
+ SITEURL.$e107->getFolder('images'),
+ SITEURL.$e107->getFolder('themes'),
+ SITEURL.$e107->getFolder('images'),
+ SITEURL.$e107->getFolder('plugins'),
+ SITEURL.$e107->getFolder('files'),
+ SITEURL.$e107->getFolder('themes'),
+ SITEURL.$e107->getFolder('downloads'),
+ SITEURL.$e107->getFolder('handlers')
);
break;
}
@@ -1241,8 +1237,8 @@ class e_parse
if (ADMIN)
{
- $replace_relative[] = $ADMIN_DIRECTORY;
- $replace_absolute[] = SITEURL.$ADMIN_DIRECTORY;
+ $replace_relative[] = $e107->getFolder('admin');
+ $replace_absolute[] = SITEURL.$e107->getFolder('admin');
$search[] = "{e_ADMIN}";
}
@@ -1266,10 +1262,14 @@ class e_parse
}
// $pattern = ($all ? "#\{([A-Za-z_0-9]*)\}#s" : "#\{(e_[A-Z]*)\}#s");
- $pattern = ($all ? "#\{([A-Za-z_0-9]*)\}#s" : "#\{(e_[A-Z]*(?:_ABS){0,1})\}#s");
+ $pattern = ($all ? '#\{([A-Za-z_0-9]*)\}#s' : '#\{(e_[A-Z]*(?:_ABS){0,1})\}#s');
$text = preg_replace_callback($pattern, array($this, 'doReplace'), $text);
- $theme_path = (defined("THEME")) ? constant("THEME") : "";
- $text = str_replace("{THEME}",$theme_path,$text);
+
+ if(!defined('THEME'))
+ {
+ //if not already parsed by doReplace
+ $text = str_replace(array('{THEME}', '{THEME_ABS}'), '', $text);
+ }
return $text;
}
@@ -1284,32 +1284,32 @@ class e_parse
return $matches[1];
}
- function createConstants($url,$mode=0){
- global $IMAGES_DIRECTORY, $PLUGINS_DIRECTORY, $FILES_DIRECTORY, $THEMES_DIRECTORY, $DOWNLOADS_DIRECTORY,
- $ADMIN_DIRECTORY, $HANDLERS_DIRECTORY;
-
+ function createConstants($url, $mode=0)
+ {
+ //FIXME - create constants for absolute paths and site URL's
if($mode == 0) // folder name only.
{
+ $e107 = e107::getInstance();
$tmp = array(
- "{"."e_IMAGE"."}"=>$IMAGES_DIRECTORY,
- "{"."e_PLUGIN"."}"=>$PLUGINS_DIRECTORY,
- "{"."e_FILE"."}"=>$FILES_DIRECTORY,
- "{"."e_THEME"."}"=>$THEMES_DIRECTORY,
- "{"."e_DOWNLOAD"."}"=>$DOWNLOADS_DIRECTORY,
- "{"."e_ADMIN"."}"=>$ADMIN_DIRECTORY,
- "{"."e_HANDLER"."}"=>$HANDLERS_DIRECTORY
+ '{e_IMAGE}' => $e107->getFolder('images'),
+ '{e_PLUGIN}' => $e107->getFolder('plugins'),
+ '{e_FILE}' => $e107->getFolder('files'),
+ '{e_THEME}' => $e107->getFolder('themes'),
+ '{e_DOWNLOAD}' => $e107->getFolder('downloads'),
+ '{e_ADMIN}' => $e107->getFolder('admin'),
+ '{e_HANDLER}' => $e107->getFolder('handlers')
);
}
elseif($mode == 1) // relative path
{
$tmp = array(
- "{"."e_IMAGE"."}"=>e_IMAGE,
- "{"."e_PLUGIN"."}"=>e_PLUGIN,
- "{"."e_FILE"."}"=>e_FILE,
- "{"."e_THEME"."}"=>e_THEME,
- "{"."e_DOWNLOAD"."}"=>e_DOWNLOAD,
- "{"."e_ADMIN"."}"=>e_ADMIN,
- "{"."e_HANDLER"."}"=>e_HANDLER
+ '{e_IMAGE}' => e_IMAGE,
+ '{e_PLUGIN}' => e_PLUGIN,
+ '{e_FILE}' => e_FILE,
+ '{e_THEME}' => e_THEME,
+ '{e_DOWNLOAD}' => e_DOWNLOAD,
+ '{e_ADMIN}' => e_ADMIN,
+ '{e_HANDLER}' => e_HANDLER
);
}
foreach($tmp as $key=>$val)
@@ -1325,14 +1325,16 @@ class e_parse
}
+ //FIXME - $match not used?
function e_highlight($text, $match)
{
- preg_match_all("#<[^>]+>#", $text, $tags);
- $text = preg_replace("#<[^>]+>#", "<|>", $text);
- $text = preg_replace("#(\b".$match."\b)#i", "\\1", $text);
+ $tags = array();
+ preg_match_all('#<[^>]+>#', $text, $tags);
+ $text = preg_replace('#<[^>]+>#', '<|>', $text);
+ $text = preg_replace('#(\b".$match."\b)#i', '\\1', $text);
foreach ($tags[0] as $tag)
{
- $text = preg_replace("#<\|>#", $tag, $text, 1);
+ $text = preg_replace('#<\|>#', $tag, $text, 1);
}
return $text;
}