]> iEval git - gruntmaster-page.git/blobdiff - lib/Gruntmaster/Data.pm
Add compile errors
[gruntmaster-page.git] / lib / Gruntmaster / Data.pm
index 2f8a18470a1965c0e154dfad1c5de4cce0c1bbda..1ca79586a24580b06ed494727230176a4c91f91e 100644 (file)
@@ -17,12 +17,12 @@ sub dynsub{
 }
 
 BEGIN {
-       for my $cmd (qw/multi exec smembers get hget hdel hset sadd srem incr hmset hsetnx/) {
-               dynsub uc $cmd, sub { say "Arguments to \U$cmd: ", join ', ', @_; $redis->$cmd(@_) };
+       for my $cmd (qw/multi exec smembers get hget hdel hset sadd srem incr hmset hsetnx publish/) {
+               dynsub uc $cmd, sub { $redis->$cmd(@_) };
        }
 
-       for my $cmd (qw/publish subscribe wait_for_messages/) {
-               dynsub uc $cmd, sub { say "Arguments to \U$cmd: ", join ', ', @_; $pubsub->$cmd(@_) };
+       for my $cmd (qw/subscribe wait_for_messages/) {
+               dynsub uc $cmd, sub { $pubsub->$cmd(@_) };
        }
 }
 
@@ -33,6 +33,7 @@ sub rexec                             ()              { EXEC }
 
 sub problems                   ()              { SMEMBERS cp . 'problem' }
 sub contests                   ()              { SMEMBERS cp . 'contest' }
+sub users                              ()              { SMEMBERS cp . 'user' }
 sub jobcard                            ()              { GET cp . 'job' }
 
 sub job_results                        (_)             { decode_json HGET cp . "job.$_[0]", 'results' }
@@ -51,6 +52,11 @@ sub defhash{
                dynsub "set_${name}_$key", sub ($$) { HSET cp . "$name.$_[0]", $key, $_[1] };
        }
 
+       dynsub "edit_$name", sub {
+               my ($key, %values) = @_;
+               HMSET cp . "$name.$key", %values;
+       };
+
        dynsub "insert_$name", sub {
                my ($key, %values) = @_;
                SADD cp . $name, $key or return;
@@ -68,16 +74,16 @@ sub defhash{
        };
 }
 
-defhash problem => qw/name level statement/;
+defhash problem => qw/name level statement owner author/;
 defhash contest => qw/start end name owner/;
-defhash job => qw/date extension filesize private problem result result_text user/;
-defhash user => qw/name email town university/;
+defhash job => qw/date errors extension filesize private problem result result_text user/;
+defhash user => qw/name email town university level/;
 
 sub clean_job (_){
        HDEL cp . "job.$_[0]", qw/result result_text results daemon/
 }
 
-our @EXPORT_OK = do {
+our @EXPORT = do {
        no strict 'refs';
        grep { $_ =~ /^[a-zA-Z]/ and exists &$_ } keys %{__PACKAGE__ . '::'};
 };
This page took 0.024291 seconds and 4 git commands to generate.