X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/d4925a8b60f04674885e30d9316dc0263f8b9a84..b293ff8ad52fc76ba0c44783e3982418114d6b08:/SL/DB/ShopPart.pm diff --git a/SL/DB/ShopPart.pm b/SL/DB/ShopPart.pm index 1df77fd89..7c67bb1a3 100644 --- a/SL/DB/ShopPart.pm +++ b/SL/DB/ShopPart.pm @@ -50,16 +50,20 @@ sub get_tax_and_price { } sub get_images { - my ( $self ) = @_; + my ($self, %params) = @_; require SL::DB::ShopImage; my $images = SL::DB::Manager::ShopImage->get_all( where => [ 'files.object_id' => $self->{part_id}, ], with_objects => 'file', sort_by => 'position' ); my @upload_img = (); foreach my $img (@{ $images }) { my $file = SL::File->get(id => $img->file->id ); - my ($path, $extension) = (split /\./, $file->file_name); + # no good: split("\." , 202.220.pdf) -> invaild extension 220 + # file->extension should be in SL::File, a valid extension may also be 'tar.gz' + my ($path, $extension) = split(/\.([^\.]+)$/, $file->file_name); my $content = File::Slurp::read_file($file->get_file); - my $temp ={ ( link => 'data:' . $file->mime_type . ';base64,' . MIME::Base64::encode($content, ""), #$content, # MIME::Base64::encode($content), + + my $temp ={ ( + link => $params{want_binary} ? $content : 'data:' . $file->mime_type . ';base64,' . MIME::Base64::encode($content, ""), description => $img->file->title, position => $img->position, extension => $extension,