From 3a7baab7344d933e9534716ddd9ff88645dcecfa Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Fri, 24 Mar 2017 17:28:21 +0100 Subject: begin work on recursive mode. isn't recursive yet, but does list directories. --- lib/App/Dthumb.pm | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) (limited to 'lib/App/Dthumb.pm') diff --git a/lib/App/Dthumb.pm b/lib/App/Dthumb.pm index b6024a6..6e4eeaf 100755 --- a/lib/App/Dthumb.pm +++ b/lib/App/Dthumb.pm @@ -53,11 +53,17 @@ sub read_directories { my ( @files, @old_thumbs ); for my $file ( read_dir($imgdir) ) { + if ( $file =~ m{ ^ [.] }x ) { + next; + } if ( -f "${imgdir}/${file}" and $file =~ qr{ [.] (png | jp e? g) $ }iox ) { push( @files, $file ); } + elsif ( $self->{config}{recursive} and -d "${imgdir}/${file}" ) { + push( @files, $file ); + } } if ( -d $thumbdir ) { @@ -120,15 +126,24 @@ sub create_thumbnail_html { $self->{html} .= "
\n"; - $self->{html} .= sprintf( + if ( -d $file ) { + $self->{html} + .= sprintf( "\t\n" - . "\t\t\"%s\"\n", - ($file) x 2, - $self->{config}->{dir_thumbs}, - ($file) x 2, - ); + . "\t\t\"%s\"\n", + ($file) x 2, $file, ); + } + else { + $self->{html} .= sprintf( +"\t\n" + . "\t\t\"%s\"\n", + ($file) x 2, + $self->{config}->{dir_thumbs}, + ($file) x 2, + ); + } - if ( $self->{config}->{names} ) { + if ( $self->{config}->{names} or -d $file ) { $self->{html} .= sprintf( "\t
\n" . "\t%s\n", 'text-decoration: none', @@ -153,9 +168,12 @@ sub create_thumbnail_image { { return; } + if ( -d $file ) { + return; + } my $image = Image::Imlib2->load($file); - my ( $dx, $dy ) = ( $image->width(), $image->height() ); + my ( $dx, $dy ) = ( $image->width, $image->height ); my $thumb = $image; if ( $dx > $thumb_dim or $dy > $thumb_dim ) { -- cgit v1.2.3