only check for class.$classname.inc.php files, when scanning for plugins, as backupfiles postfixing the filename with an other extension stall EGroupware completly (Fatal Error: Can not redeclar class)

This commit is contained in:
Ralf Becker 2011-11-21 09:50:02 +00:00
parent 29b578cd0b
commit 2d7584d459

View File

@ -124,7 +124,7 @@ class importexport_helper_functions {
$account_ids[] = $account_id;
continue;
}
// Handle groups listed as Group, <name>
if ( $account_lid[0] == ' ' && $account_id = $GLOBALS['egw']->accounts->name2id( trim($account_lid))) {
$account_ids[] = $account_id;
@ -381,12 +381,12 @@ class importexport_helper_functions {
while (false !== ($entry = $d->read())) {
// Blacklisted?
if(is_array(self::$blacklist_files[$appname]) && in_array($entry, self::$blacklist_files[$appname])) continue;
list( ,$classname, ,$extension) = explode('.',$entry);
if (!preg_match('/^class\.([^.]+)\.inc\.php$/', $entry, $matches)) continue;
$classname = $matches[1];
$file = $appdir. '/'. $entry;
foreach ($types as $type) {
if( !is_file($file) || strpos($entry, $type) === false || $extension != 'php' ) continue;
if( !is_file($file) || strpos($entry, $type) === false) continue;
require_once($file);
$reflectionClass = new ReflectionClass($classname);
if($reflectionClass->IsInstantiable() &&