X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=lib%2FGruntmaster%2FData.pm;h=5318cbcfcab23f5bc7a3a1fe865492a5e245db97;hb=9bfb38e0b3d065be9f2d66304d4d293c5753b096;hp=3258c85c32b769b460c769188c4300e0e79d4135;hpb=a2aa46e6fb478ba94f05d5ce36b7848e7a8bf807;p=gruntmaster-data.git diff --git a/lib/Gruntmaster/Data.pm b/lib/Gruntmaster/Data.pm index 3258c85..5318cbc 100644 --- a/lib/Gruntmaster/Data.pm +++ b/lib/Gruntmaster/Data.pm @@ -102,7 +102,7 @@ sub user_entry { my ($self, $id) = @_; my $user = $self->users->find($id, {columns => USER_PUBLIC_COLUMNS, prefetch => [qw/problem_statuses contest_statuses/]}); my @problems = map { {problem => $_->get_column('problem'), solved => $_->solved} } $user->problem_statuses; - my @contests = map { {contest => $_->get_column('contest'), rank => $_->rank, score => $_->score} } $user->contest_statuses; + my @contests = map { {contest => $_->contest->id, contest_name => $_->contest->name, rank => $_->rank, score => $_->score} } $user->contest_statuses->search(undef, {prefetch => 'contest'}); +{ $user->get_columns, problems => \@problems, contests => \@contests } } @@ -199,7 +199,7 @@ sub update_status { my @jobs = $self->jobs->search(undef, {cache => 1})->all; my %hash; - $hash{$_->get_column('problem'), $_->get_column('owner')} = [$_->id, $_->result ? 1 : 0] for @jobs; + $hash{$_->get_column('problem'), $_->get_column('owner')} = [$_->id, $_->result ? 0 : 1] for @jobs; my @problem_statuses = map { [split ($;), @{$hash{$_}} ] } keys %hash; my @contest_statuses = map {