#!/usr/bin/perl -w
use v5.14;
-use Gruntmaster::Data qw/jobcard job_date job_user job_problem job_filesize job_private job_result_text job_daemon clean_job problem_name PUBLISH HDEL/;
+use Gruntmaster::Data;
use IO::Prompter [ -style => 'bold', '-stdio', '-verbatim' ];
use File::Slurp qw/read_file/;
+use Getopt::Long;
use Term::ANSIColor qw/RED RESET/;
use POSIX qw/strftime/;
##################################################
+my $contest;
+
sub cmd_help{
exec perldoc => $0
}
sub cmd_card{
- my $contest = shift;
- print jobcard;
+ say jobcard;
}
sub cmd_show{
say "Date: " , strftime ('%c', localtime job_date);
say "User: ", job_user;
say "Problem: ", problem_name job_problem;
+ say "Extension: ", job_extension;
say "Size: ", sprintf "%.2fKB", job_filesize() / 1024;
say "Private: ", (job_private() ? 'yes' : 'no');
say "Result text: ", job_result_text;
say "Daemon: ", job_daemon;
+ say "Compile errors: ", job_errors;
}
sub cmd_rerun{
local $_ = shift or goto &cmd_list;
clean_job;
- PUBLISH jobs => $_;
+ $contest//='';
+ PUBLISH jobs => "$contest.$_";
}
##################################################
-no strict 'refs';
+GetOptions ( 'contest=s' => \$contest );
+local $Gruntmaster::Data::contest = $contest;
my $cmd = 'cmd_' . shift;
cmd_help unless exists $main::{$cmd};
+no strict 'refs';
$cmd->(@ARGV) if exists $main::{$cmd};
1;