Pass PSGI env to generators
authorMarius Gavrilescu <marius@ieval.ro>
Wed, 5 Feb 2014 14:12:35 +0000 (16:12 +0200)
committerMarius Gavrilescu <marius@ieval.ro>
Wed, 5 Feb 2014 14:12:35 +0000 (16:12 +0200)
14 files changed:
lib/Gruntmaster/Page/Base.pm
lib/Gruntmaster/Page/CSS.pm
lib/Gruntmaster/Page/Ct.pm
lib/Gruntmaster/Page/Ct/Entry.pm
lib/Gruntmaster/Page/JS.pm
lib/Gruntmaster/Page/Log.pm
lib/Gruntmaster/Page/Log/Entry.pm
lib/Gruntmaster/Page/Pb.pm
lib/Gruntmaster/Page/Pb/Entry.pm
lib/Gruntmaster/Page/Src.pm
lib/Gruntmaster/Page/St.pm
lib/Gruntmaster/Page/Us.pm
lib/Gruntmaster/Page/Us/Entry.pm
lib/Plack/App/Gruntmaster.pm

index 91c2764ffb6209e30a0d0a61c174cce81d212044..3a58c188af55920d61d198f64206aab68d04201b 100644 (file)
@@ -27,7 +27,7 @@ sub import {
        *{"${caller}::TITLE"} = sub () { $title };
        *{"${caller}::debug"} = sub {
                local $Log::Log4perl::caller_depth = $Log::Log4perl::caller_depth + 1;
-               $_[0]->({qw/level debug message/ => $_[1]})
+               $_[0]->{'psgix.logger'}->({qw/level debug message/ => $_[1]})
        };
 }
 
index a6f647a5f924846cbabb0607893158c67acc2644..25b613777acc737b295d544bdbe7b0452ef2cec3 100644 (file)
@@ -11,8 +11,8 @@ use File::Slurp qw/read_file/;
 use CSS::Minifier::XS qw/minify/;
 
 sub generate{
-       my ($self, $format, $logger, $theme) = @_;
-       debug $logger => "theme is $theme";
+       my ($self, $format, $env, $theme) = @_;
+       debug $env => "theme is $theme";
        return [404, ['Content-Type' => 'text/plain'], [ 'Not found' ]] unless -e "css/themes/$theme.css";
        my $css = read_file "css/themes/$theme.css";
        $css .= read_file $_ for <css/*.css>;
index 4aa3254c4a58daccead353d15daf2659bc9e8297..ede25624f3dc5969c208fe3d01f8a5a8fa07a0f6 100644 (file)
@@ -54,8 +54,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger) = @_;
-       debug $logger => "language is '$lang'";
+       my ($self, $htc, $lang, $env) = @_;
+       debug $env => "language is '$lang'";
 
        my (@running, @pending, @finished);
        for (contests) {
index 97089b536852a57fa24243ec9d47578b5672216d..83e270548c11002479eddd89c6845585a15cef64 100644 (file)
@@ -19,8 +19,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger, $id) = @_;
-       debug $logger => "language is '$lang' and id is '$id'";
+       my ($self, $htc, $lang, $env, $id) = @_;
+       debug $env => "language is '$lang' and id is '$id'";
 
        $htc->param(id => $id);
        $htc->param(name => contest_name $id);
index 26b1be026c7068f2c6ff263148ff89cf07394cd0..dca5affe76e7ab247dbbfa0bdf40573d86d33b47 100644 (file)
@@ -11,8 +11,8 @@ use File::Slurp qw/read_file/;
 use JavaScript::Minifier::XS qw/minify/;
 
 sub generate{
-       my ($self, $format, $logger) = @_;
-       debug $logger => "";
+       my ($self, $format, $env) = @_;
+       debug $env => "";
        my $js;
        $js .= read_file $_ for <js/*.js>;
        [200, ['Content-Type' => 'application/javascript', 'Cache-Control' => 'public, max-age=604800'], [$js] ]
index 19862a82b69a8840a5dd6a00c615a8a5bea30c71..4773fecaaac7b86326855b350f60bebce4b7d64e 100644 (file)
@@ -31,8 +31,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger, $ct, $page) = @_;
-       debug $logger => "language is '$lang', contest is '$ct' and page is '$page'";
+       my ($self, $htc, $lang, $env, $ct, $page) = @_;
+       debug $env => "language is '$lang', contest is '$ct' and page is '$page'";
        local $Gruntmaster::Data::contest = $ct if $ct;
 
        my $pages = POSIX::floor (jobcard / PAGE_SIZE);
index f3e3236f607d51a60d23c30dd99b8628ff662d00..af9e1db26ab5250277df264538dfbf96d172cc27 100644 (file)
@@ -24,8 +24,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger, $ct, $id) = @_;
-       debug $logger => "language is '$lang', contest is '$ct' and id is '$id'";
+       my ($self, $htc, $lang, $env, $ct, $id) = @_;
+       debug $env => "language is '$lang', contest is '$ct' and id is '$id'";
        local $Gruntmaster::Data::contest = $ct;
 
        my @tests = ();
index 7a9a0c254c33a06c0f84c8012004409de72cb5d6..ffdde60697862c0b2db66533649082bb0d20ea7d 100644 (file)
@@ -39,8 +39,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger, $ct) = @_;
-       debug $logger => "language is '$lang' and contest is '$ct'";
+       my ($self, $htc, $lang, $env, $ct) = @_;
+       debug $env => "language is '$lang' and contest is '$ct'";
        local $Gruntmaster::Data::contest = $ct if $ct;
 
        my @problems = sort { $b->{name} cmp $a->{name} } map +{
index 78560fd061b023eae962c01c98c67cdb2df4aa04..4eacd4e0f56ab2eccbc1c63f4c53690bfd06df30 100644 (file)
@@ -40,8 +40,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger, $contest, $id) = @_;
-       debug $logger => "language is '$lang', contest is '$contest', id is '$id'";
+       my ($self, $htc, $lang, $env, $contest, $id) = @_;
+       debug $env => "language is '$lang', contest is '$contest', id is '$id'";
 
        $htc->param(cansubmit => 1);
        if ($contest) {
index 77a5cd20cf4511a5e6c8dcf2f95a86d4a1f8081b..b7b94332b3ec0a18a9343dae0300e5192d9b1606 100644 (file)
@@ -18,8 +18,8 @@ use constant CONTENT_TYPES => +{
 };
 
 sub generate{
-       my ($self, $format, $logger, $ct, $job, $ext) = @_;
-       debug $logger => "Contest is $ct, job is $job and extension is $ext";
+       my ($self, $format, $env, $ct, $job, $ext) = @_;
+       debug $env => "Contest is $ct, job is $job and extension is $ext";
        local $Gruntmaster::Data::contest = $ct if $ct;
 
        [200, ['Content-Type' => CONTENT_TYPES->{$ext}, 'Cache-Control' => 'max-age=604800'], [job_inmeta($job)->{files}{prog}{content}] ]
index 97d0d065d48e3990aff57b514a553cf58020defa..5803183be0fc49994a93bc641f969582e6d02e65 100644 (file)
@@ -45,8 +45,8 @@ sub calc_score{
 }
 
 sub _generate{
-       my ($self, $htc, $lang, $logger, $ct) = @_;
-       debug $logger => "language is '$lang' and contest is '$ct'";
+       my ($self, $htc, $lang, $env, $ct) = @_;
+       debug $env => "language is '$lang' and contest is '$ct'";
        my ($totaltime, $start);
 
        local $Gruntmaster::Data::contest;
index 0ca1e29ffc90de34fac73cd1e5ad096f48de4496..b4dcb3faf2858d982a49eecf2617ee686d732196 100644 (file)
@@ -15,8 +15,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger) = @_;
-       debug $logger => "language is '$lang'";
+       my ($self, $htc, $lang, $env) = @_;
+       debug $env => "language is '$lang'";
 
        $htc->param(users => [ sort { lc $a->{name} cmp lc $b->{name} }
                                                         map { {id => $_, name => user_name} }
index 373193dc0865e40f09b2581881316b1be73abd2f..e375ab881f17db9ba28b21a7b1a396275106e4c5 100644 (file)
@@ -17,8 +17,8 @@ HTML
 };
 
 sub _generate{
-       my ($self, $htc, $lang, $logger, $us) = @_;
-       debug $logger => "language is '$lang', user is '$us'";
+       my ($self, $htc, $lang, $env, $us) = @_;
+       debug $env => "language is '$lang', user is '$us'";
        local $_ = $us;
 
        $htc->param(name => user_name);
index 534326864bfa8c58724bf65f9c88c93fc4a86f59..2334235f1670bf64f997eafccde6e5d239c44812 100644 (file)
@@ -22,7 +22,7 @@ sub call {
                my @args;
                next unless @args = $r->path =~ m/^$re$/a;
                my $format = choose $obj->variants, $r->headers;
-               return $obj->generate($format, $env->{'psgix.logger'}, map { $_ // '' } @args);
+               return $obj->generate($format, $env, map { $_ // '' } @args);
        }
 
        if ($r->method eq 'GET' || $r->method eq 'HEAD') {
This page took 0.019942 seconds and 4 git commands to generate.