htdocs/cgi-bin/status
changeset 10 0e2b0e64bc21
child 11 bd470c2d0a0a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/htdocs/cgi-bin/status	Wed Feb 06 13:22:28 2013 +0100
@@ -0,0 +1,64 @@
+#!/usr/bin/perl
+
+use warnings;
+use strict;
+use CGI qw(-utf8);
+use CGI::Carp qw(fatalsToBrowser);
+use Net::SCP;
+use Template;
+use FindBin qw($RealBin);
+
+my $cgi = new CGI;
+my $tt = Template->new({INCLUDE_PATH => "$RealBin/../templates"})
+   or die "Can't create template object: $Template::ERROR\n";
+
+if (!$cgi->param("_submit")) {
+
+   print CGI::header(-type => "text/html", -charset => "utf-8");
+
+   $tt->process("status.html");
+   exit 0;
+}
+
+open (UUID, "<UUID");
+my @uuid = <UUID>;
+close UUID;
+
+my ($error, $farbe);
+if ($cgi->param("anummer") eq ''){
+   $error="missing Key";
+   $farbe='rot';
+}
+else{$farbe="black"}
+if($cgi->param("anummer") !~ m/^[A-F0-9]{8}\-[A-F0-9]{4}\-[A-F0-9]{4}\-[A-F0-9]{4}\-[A-F0-9]{12}/){
+   $error="invalid Key";
+   $farbe="red";
+}
+else{
+   foreach (@uuid){
+      if ($cgi->param("anummer") eq $_) {
+         $farbe="black";
+         next;
+      }
+      else{
+         $error="no such Job-ID";
+         exit 0;
+      }
+   }
+}
+if ($error){
+   print CGI::header(-type => "text/html", -charset => "utf-8");
+   $tt->process("status.html", {
+         farbe => $farbe,
+         anummer => $cgi->param("anummer"),
+         error => \$error,
+      }) or die $tt->error();
+   exit 0;
+}
+my $scp=Net::SCP->new();
+$scp->scp("root@192.168.0.144:/usr/lib/cgi-bin/".$cgi->param("anummer"), "/var/www/download/".$cgi->param("anummer"));
+
+print CGI::header(-type => "text/html", -charset => "utf-8");
+$tt->process("download.html",{
+      uuid => $cgi->param("anummer")
+});