add more robust download functionality; convert to new API in Stexaminer::graphsvg
[scpubgit/stemmaweb.git] / lib / stemmaweb / View / SVG.pm
index b8e4673..13419e3 100644 (file)
@@ -2,13 +2,16 @@ package stemmaweb::View::SVG;
 
 use strict;
 use base 'Catalyst::View';
-use Encode qw( decode_utf8 );
 
 sub process {
-        my( $self, $c ) = @_;
-        $c->res->content_type( 'image/svg+xml' );
-        $c->res->content_encoding( 'UTF-8' );
-        $c->res->output( decode_utf8( $c->stash->{result} ) );
+       my( $self, $c ) = @_;
+       $c->res->content_type( 'image/svg+xml' );
+       $c->res->content_encoding( 'UTF-8' );
+       if( $c->stash->{download} ) {
+               $c->res->header( 'Content-Disposition', 
+                       sprintf( "attachment; filename=\"%s.svg\"", $c->stash->{name} ) );
+       }
+       $c->res->output( $c->stash->{result} );
 }
 
 1;