1
0
mirror of https://github.com/e107inc/e107.git synced 2025-08-04 13:47:31 +02:00

Bugtrracker #4384 - speed up code - thanks marj

This commit is contained in:
e107steved
2008-04-08 21:24:32 +00:00
parent 67222d6408
commit 76210772d8

View File

@@ -11,8 +11,8 @@
| GNU General Public License (http://gnu.org). | GNU General Public License (http://gnu.org).
| |
| $Source: /cvs_backup/e107_0.8/e107_handlers/theme_handler.php,v $ | $Source: /cvs_backup/e107_0.8/e107_handlers/theme_handler.php,v $
| $Revision: 1.6 $ | $Revision: 1.7 $
| $Date: 2007-05-04 20:51:02 $ | $Date: 2008-04-08 21:24:23 $
| $Author: e107steved $ | $Author: e107steved $
+----------------------------------------------------------------------------+ +----------------------------------------------------------------------------+
*/ */
@@ -72,26 +72,35 @@ class themeHandler{
$themeArray = array(); $themeArray = array();
$tloop = 1; $tloop = 1;
$handle = opendir(e_THEME); $handle = opendir(e_THEME);
while (false !== ($file = readdir($handle))) { while (false !== ($file = readdir($handle)))
if ($file != "." && $file != ".." && $file != "CVS" && $file != "templates" && is_dir(e_THEME.$file) && file_exists(e_THEME.$file."/theme.php")) { {
if($mode == "id") { if ($file != "." && $file != ".." && $file != "CVS" && $file != "templates" && is_dir(e_THEME.$file) && file_exists(e_THEME.$file."/theme.php"))
{
if($mode == "id")
{
$themeArray[$tloop] = $file; $themeArray[$tloop] = $file;
} else { }
else
{
$themeArray[$file]['id'] = $tloop; $themeArray[$file]['id'] = $tloop;
} }
$tloop++; $tloop++;
$STYLESHEET = FALSE; $STYLESHEET = FALSE;
if(!$mode) { if(!$mode)
{
$handle2 = opendir(e_THEME.$file."/"); $handle2 = opendir(e_THEME.$file."/");
while (false !== ($file2 = readdir($handle2))) { while (false !== ($file2 = readdir($handle2)))
if ($file2 != "." && $file2 != ".." && $file != "CVS" && !is_dir(e_THEME.$file."/".$file2)) { { // Read files in theme directory
if ($file2 != "." && $file2 != ".." && $file != "CVS" && !is_dir(e_THEME.$file."/".$file2))
{
$themeArray[$file]['files'][] = $file2; $themeArray[$file]['files'][] = $file2;
if(strstr($file2, "preview.")) { if(strstr($file2, "preview."))
{
$themeArray[$file]['preview'] = e_THEME.$file."/".$file2; $themeArray[$file]['preview'] = e_THEME.$file."/".$file2;
} }
if(strstr($file2, "css") && !strstr($file2, "menu.css") && strpos($file2, "e_") !== 0 && strpos($file2, "admin_") !== 0) if(strstr($file2, "css") && !strstr($file2, "menu.css") && strpos($file2, "e_") !== 0 && strpos($file2, "admin_") !== 0)
{ {
/* get information string */ /* get information string for css file */
$fp=fopen(e_THEME.$file."/".$file2, "r"); $fp=fopen(e_THEME.$file."/".$file2, "r");
$cssContents = fread ($fp, filesize(e_THEME.$file."/".$file2)); $cssContents = fread ($fp, filesize(e_THEME.$file."/".$file2));
fclose($fp); fclose($fp);
@@ -107,9 +116,12 @@ class themeHandler{
{ {
$STYLESHEET = TRUE; $STYLESHEET = TRUE;
} }
}
}
}
} if($file2=='theme.php')
{
$fp=fopen(e_THEME.$file."/theme.php", "r"); $fp=fopen(e_THEME.$file."/theme.php", "r");
$themeContents = fread ($fp, filesize(e_THEME.$file."/theme.php")); $themeContents = fread ($fp, filesize(e_THEME.$file."/theme.php"));
fclose($fp); fclose($fp);
@@ -141,6 +153,7 @@ class themeHandler{
unset($themeArray[$file]); unset($themeArray[$file]);
} }
} }
}
closedir($handle2); closedir($handle2);
} }
} }