Hi!
Hhm. Vielleicht hängt dein problem mit dem debian-s9y zusammen. Mit dem hab ich nämlich keine Erfahrungen.
Die Verzeichnisse werden nämlich relativ vom aktuellen verzeichnis ausgelesen, vielleicht unterscheidet sich das bei debian von dem wirklichen verzeichnis wo HTTP drin liegt.
In der datei include/functions_images.inc.php gibt es folgende Funktion, ersetz die mal durch das was ich hierhin schreibe:
Code: Select all
function serendipity_traversePath($basedir, $dir='', $onlyDirs = true, $pattern = NULL, $depth = 1, $max_depth = NULL, $apply_ACL = false, $aExcludeDirs = NULL) {
if ($aExcludeDirs === null) {
$aExcludeDirs = array("CVS" => true, ".svn" => true);
}
$odir = serendipity_dirSlash('end', $basedir) . serendipity_dirSlash('end', $dir);
echo "opening directory handle to $odir...<br />\n"; // GARVIN DEBUG
$dh = @opendir($odir);
if (!$dh) {
return array();
}
$files = array();
while (($file = @readdir($dh)) !== false) {
echo "Got $file...<br />\n"; // GARVIN DEBUG
if ($file != '.' && $file != '..') {
$bPatternMatch = (is_null($pattern) || preg_match($pattern, $file));
$sFullPath = $odir . $file;
$bIsDir = is_dir($sFullPath);
if ($onlyDirs === false || $bIsDir) {
echo " - Matching onlyDirs / bIsDir.<br />\n"; // GARVIN DEBUG
if ($bPatternMatch &&
(!$bIsDir || $aExcludeDirs == null || !isset($aExcludeDirs[$file]))) {
$files[] = array(
'name' => $file,
'depth' => $depth,
'relpath' => ltrim(str_replace('\\', '/', serendipity_dirSlash('end', $dir)) . basename($file) . ($bIsDir ? '/' : ''), '/'),
'directory' => $bIsDir
);
echo " - Matched on Pattern.<br />\n"; // GARVIN DEBUG
}
}
if ($bIsDir &&
($max_depth === null || $depth < $max_depth) &&
($aExcludeDirs == null || !isset($aExcludeDirs[$file]))) {
$next_dir = serendipity_dirSlash('end', $dir) . basename($file);
echo " - Matched on subdirectory, traversing....<br />\n"; // GARVIN DEBUG
$files = array_merge($files, serendipity_traversePath($basedir, $next_dir, $onlyDirs, $pattern, ($depth+1), $max_depth, $apply_ACL, $aExcludeDirs));
}
}
}
@closedir($dh);
if ($depth == 1 && $apply_ACL !== FALSE) {
echo "Got listing, pushing through ACL: <pre>" . print_r($files, true) . "</pre>...<br />\n"; // GARVIN DEBUG
serendipity_directoryACL($files, $apply_ACL);
}
echo "Returning Result: <pre>" . print_r($files, true) . "</pre>...<br />\n"; // GARVIN DEBUG
return $files;
}
Meine Einfügungen sind mit "GARVIN DEBUG" gekennzeichnet. Wenn Du nun die Maske für "Verzeichnise Verwalten" öffnest müsstest Du eigentlich einige debugging-ausgaben sehen können. Die bitte mal mitteilen
Grüße,
Garvin