From 58a5c0f52ee33cbc6f267a4e676b4990ab9e3241 Mon Sep 17 00:00:00 2001 From: Drake Date: Wed, 8 Nov 2006 00:45:16 +0000 Subject: [PATCH] Restructure block from r3000 to make it a bit cleaner. --- lib/WebGUI/Form/Image.pm | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/WebGUI/Form/Image.pm b/lib/WebGUI/Form/Image.pm index 9cd30f1a7..94c7fd75f 100644 --- a/lib/WebGUI/Form/Image.pm +++ b/lib/WebGUI/Form/Image.pm @@ -142,22 +142,22 @@ See WebGUI::Form::File::getValueFromPost() for details. Generates a thumbnail. sub getValueFromPost { my $self = shift; my $id = $self->SUPER::getValueFromPost(@_); + if (defined $id) { my $storage = WebGUI::Storage::Image->get($self->session, $id); if (defined $storage) { - my $atLeastOneImage = 0; - foreach my $file (@{$storage->getFiles}) { - if ($storage->isImage($file)) { - $storage->generateThumbnail($file); - $atLeastOneImage = 1; - } - elsif ($self->get("forceImageOnly")) { - $storage->deleteFile($file); - $id = undef unless $atLeastOneImage; - } + my @files = @{$storage->getFiles}; + my @images = grep{$storage->isImage($_)} @files; + if ($self->get('forceImageOnly')) { + $storage->deleteFile($_) for grep{!isIn($_, @images)} @files; + @files = @images; } + + return undef unless @files; + $storage->generateThumbnail($_) for @images; } } + return $id; }