sub zeigeThumbnail { my $self = shift; my $grafik = $self->query->param('bild'); my $musterEndung = $self->param('Dateiendungen'); my $photo_dir = $self->param('Photo_dir'); my $originalbild = $photo_dir . $grafik; my $thumbnail = $self->_getThumbnailPfad( $grafik ); if( -e $originalbild ) { if( !$self->_getThumbnailExistenz( $grafik ) or ( stat( $originalbild ) )[ 9 ] < ( stat( $thumbnail ) )[ 9 ] ) { # Existiert kein Thumbnail oder # ist das angeforderte Bild im Grafik-Verzeichnis neuer als # der gleichnamige Thumbnail, so ist der Thumbnail veraltet # und es muss ein neuer erstellt werden. # Fehlerabfrage... (!!!) $self->_erzeugeThumbnail( $grafik ); } }else{ # originalbild existiert nicht croak( "das angeforderte Bild [$grafik] existiert nicht" ); } open( PHOTO, $thumbnail ) or croak "ERROR: Cannot open $thumbnail: $!"; binmode PHOTO; my $data = do { local $/; }; close( PHOTO ); # Es wird direkt das Bild ausgegeben, daher wäre der passende # cgi-header ganz praktisch. $self->header_props(-type=>'image/png', -expires=>'+3d'); return $data; } # /zeigeThumbnail