File Coverage

blib/lib/Bracket/Controller/Player.pm
Criterion Covered Total %
statement 16 45 35.5
branch 0 6 0.0
condition n/a
subroutine 6 9 66.6
pod 1 3 33.3
total 23 63 36.5


line stmt bran cond sub pod time code
1              
2             use Moose;
3 4     4   1596 BEGIN { extends 'Catalyst::Controller' }
  4         9  
  4         23  
4 4     4   21976 use Perl6::Junction qw/ any /;
5 4     4   21371  
  4         9  
  4         1075  
6             =head1 NAME
7              
8             Bracket::Controller::Player - Individual and all player homes
9              
10             =cut
11              
12             my ( $self, $c, $player_id ) = @_;
13              
14 0     0 0 0 $c->stash->{template} = 'player/home.tt';
15              
16 0         0 # If we pass a player id in exlicity we want to view that players home page.
17             my $player;
18             if ($player_id) {
19 0         0 $player = $c->model('DBIC::Player')->find($player_id);
20 0 0       0 $c->go('/error_404') if !$player;
21 0         0 }
22 0 0       0 else {
23             $player = $c->user;
24             $player_id = $c->user->id;
25 0         0 }
26 0         0 $c->stash->{player} = $player;
27             $c->stash->{player_id} = $player_id;
28 0         0
29 0         0 # Get regions
30             my @regions = $c->model('DBIC::Region')->search({},{order_by => 'id'})->all;
31             $c->stash->{regions} = \@regions;
32 0         0 # Picks made per region
33 0         0 my $number_of_picks_per_region = $c->model('DBIC')->count_region_picks($player_id);
34             $c->stash->{picks_per_region} = $number_of_picks_per_region;
35 0         0 # Number of Final 4 picks
36 0         0 my $number_of_picks_per_final4 = $c->model('DBIC')->count_final4_picks($player_id);
37             $c->stash->{picks_per_final4} = $number_of_picks_per_final4;
38 0         0 return;
39 0         0 }
40 0         0  
41 4     4   40 my ( $self, $c ) = @_;
  4         6  
  4         28  
42              
43             $c->stash( template => 'player/account.tt', );
44 0     0 0 0 }
45              
46 0         0 =head2 all
47 4     4   4100  
  4         21  
  4         16  
48             View of all players. Includes links to players picks
49             and score/status.
50              
51             =cut
52              
53             my ( $self, $c ) = @_;
54            
55             $c->stash->{template} = 'player/all_home.tt';
56              
57 0     0 1   my @players = $c->model('DBIC::Player')->search( { active => 1 } )->all;
58             $c->stash->{players} = \@players;
59 0           my @regions = $c->model('DBIC::Region')->search({},{order_by => 'id'})->all;
60             $c->stash->{regions} = \@regions;
61 0            
62 0           if ($c->stash->{is_game_time}) {
63 0           # Count of correct picks per player
64 0           ($c->stash->{correct_picks_per_player}, $c->stash->{max_correct}) = $c->model('DBIC')->count_player_picks_correct;
65             ($c->stash->{upset_picks_per_player}, $c->stash->{max_upsets}) = $c->model('DBIC')->count_player_picks_upset;
66 0 0         }
67             else {
68 0           # Count of picks already made per player
69 0           # This is useful to see overall pick status.
70             $c->stash->{picks_per_player} = $c->model('DBIC')->count_player_picks;
71             }
72              
73              
74 0           }
75              
76              
77             __PACKAGE__->meta->make_immutable;
78 4     4   3804 1
  4         19  
  4         21