mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	So far, if the conversion process failed, we simply returned an empty file. Now, we report that something's wrong. Signed-off-by: Robert C. Helling <helling@atdotde.de>
		
			
				
	
	
		
			53 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable file
		
	
	
	
	
| #!/usr/bin/env perl
 | |
| 
 | |
| use CGI;
 | |
| 
 | |
| $CGI::POST_MAX = 1024 * 1024 * 10;
 | |
| 
 | |
| # Change this to the correct path to binary.
 | |
| my $smtk2ssrf = "../build/smtk2ssrf";
 | |
| my $logfile = '/tmp/smtk2ssrf.log';
 | |
| 
 | |
| my $q = CGI->new;
 | |
| 
 | |
| if ($q->upload("uploaded_file")) {
 | |
|         my $original_filename = $q->param("uploaded_file");
 | |
|         my $converted = `$smtk2ssrf $tmp_filename -`;
 | |
|         my $tmp_filename = $q->tmpFileName($original_filename);
 | |
|         my $new_filename = $original_filename;
 | |
|         $new_filename =~ s/.*[\/\\]//;
 | |
|         $new_filename =~ s/\..*$/.ssrf/;
 | |
| 
 | |
| 	if (length($converted) > 5) {
 | |
| 
 | |
| 	        print "Content-Disposition: attachment; filename=\"$new_filename\"\n";
 | |
| 		print "Content-type: subsurface/xml\n\n";
 | |
| 		print $converted;
 | |
| 	} else {
 | |
| 		print "Content-type: text/html\n\n";
 | |
| 		print "<H1>Conversion failed</H1>";
 | |
| 		print 'Please contact <a href=mailto:helling@atdotde.de>Robert Helling (robert@thetheoreticaldiver.org)</a> if the problem persits.';
 | |
| 	}
 | |
| } else {
 | |
|         print "Content-type: text/html\n\n";
 | |
| 
 | |
| # Here we could print some header stuff to fit better in the subsurface webspace context. Do do so uncomment
 | |
| # open (IN, "filename_header.html);
 | |
| # while (<IN>) {
 | |
| #         print;
 | |
| # }
 | |
| # close(IN);
 | |
| 
 | |
|         print $q->start_multipart_form();
 | |
| 
 | |
|         print $q->h1("Convert Smartrack files to Subsurface");
 | |
| 
 | |
|         print $q->filefield( -name => "uploaded_file",
 | |
|                              -size => 50,
 | |
|                              -maxlength => 200);
 | |
|         print $q->submit();
 | |
|         print $q->end_form();
 | |
| 
 | |
| # Here we could print some footer stuff as above
 | |
| 
 | |
| }
 |