use images from deeper directories for preview if the actual directory doesn't contain any

This commit is contained in:
Stephan Bergemann 2012-06-12 15:20:45 +02:00
parent 9f59cc5eb0
commit 22cd610a79
1 changed files with 29 additions and 16 deletions

View File

@ -102,6 +102,8 @@ $previous_element = @$images[0];
$root_images = array();
$second_level_images = array();
$fallback_images = array(); // if the folder only cotains subfolders with images -> these are taken for the stack preview
for($i = 0; $i < count($images); $i++) {
$prev_dir_arr = explode('/', $previous_element);
$dir_arr = explode('/', $images[$i]);
@ -109,12 +111,23 @@ for($i = 0; $i < count($images); $i++) {
if(count($dir_arr) == 1) { // getting the images in this directory
$root_images[] = $root.$images[$i];
} else {
if(strcmp($prev_dir_arr[0], $dir_arr[0]) != 0) {
if(strcmp($prev_dir_arr[0], $dir_arr[0]) != 0) { // if we entered a new directory
if(count($second_level_images) == 0) { // if we don't have images in this directory
if(count($fallback_images) != 0) { // but have fallback_images
$tl->addTile(new \OC\Pictures\TileStack($fallback_images, $prev_dir_arr[0]));
$fallback_images = array();
}
} else { // if we collected images for this directory
$tl->addTile(new \OC\Pictures\TileStack($second_level_images, $prev_dir_arr[0]));
echo print_r($fallback_images)."\n";
$fallback_images = array();
$second_level_images = array();
}
if (count($dir_arr) == 2) { // These are the pics in that subdir
}
if (count($dir_arr) == 2) { // These are the pics in our current subdir
$second_level_images[] = $root.$images[$i];
} else { // These are images from the deeper directories
$fallback_images[] = $root.$images[$i];
}
// have us a little something to compare against
$previous_element = $images[$i];