#!"C:\perl\bin\perl.exe" my %Flaggen = ( 100 => "Grey.gif", 101 => "Yellow.gif", 102 => "Green.gif", 103 => "Cyan.gif", 104 => "Magenta.gif", 105 => "White.gif", 106 => "Red.gif", 110 => "Blue.gif", 111 => "Blue.gif", 112 => "Blue.gif", 113 => "Blue.gif", 114 => "Blue.gif", 115 => "Blue.gif", 116 => "Blue.gif", 117 => "Blue.gif" ); my %Druckerstatus = ( 100 => "Angehalten", 101 => "Bereit", 102 => "Druckt", 103 => "Lizenzanfrage", 104 => "Druckeranfrage", 105 => "", 106 => "Fehler", 110 => "Eingriff erforderlich", 111 => "Papierstau", 112 => "Papierende", 113 => "Wenig Toner", 114 => "Abdeckung offen", 115 => "Offline", 116 => "Netzwerkverbindung verloren", 117 => "Ausgabefach voll" ); #------------------------------------------------------------------------------# if ($ENV{'REQUEST_METHOD'} eq 'GET') { my @ParameterListe = split(/&/, $ENV{'QUERY_STRING'}); my $i = 0; foreach $Param (@ParameterListe) { ($Parameter [$i], $Parameter [$i + 1]) = split(/=/, $Param); $i++; $Parameter [$i] =~ tr/+/ /; $Parameter [$i] =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $Parameter [$i] =~ s///g; $i++; } open (TMPL, ") { if (/^.*/) { if ($1 eq "Datum") { ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday) = localtime (time); $year += 1900; $mon += 1; printf "%02d.%02d.%04d %02d:%02d:%02d\n", $mday, $mon, $year, $hour, $min, $sec; } elsif ($1 eq "Drucker") { open (PRT, "<$Parameter[1]"); while () { chomp ($_); DruckerStatus ($_); } close (PRT); } elsif ($1 eq "Liste") { print "\n"; } } else { print $_; } } close (TMPL); } #------------------------------------------------------------------------------# sub DruckerStatus { $Status = system ("C:\\Programme\\(c4p)\\c4pRemote", "-q", "-n\"$_[0]\"") / 256; print "\n"; print " \n"; print " \n"; print " \"\"\n"; print " \n"; print " $_[0]\n"; print " $Druckerstatus{$Status}\n"; print "\n"; } #------------------------------------------------------------------------------#