Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
oalders committed May 26, 2017
1 parent 3ec6d32 commit 4ff5cbd
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 1 deletion.
32 changes: 32 additions & 0 deletions lib/MetaCPAN/Web/Controller/Author.pm
Expand Up @@ -85,13 +85,24 @@ sub index : Chained('root') PathPart('') Args(0) {

my ( $aggregated, $latest ) = @{ $self->_calc_aggregated($releases) };

my @dists = map { $_->{distribution} } @{$releases};
my $river = $self->_get_river_for_dists( $c, \@dists );
use DDP;
p $river;
foreach my $release ( @{$releases} ) {
$release->{river} = $river->{$release->{distribution}};
p $release;
last;
}

$c->stash(
{
aggregated => $aggregated,
author => $author,
faves => $faves,
latest => $latest,
releases => $releases,
river => $river,
template => 'author.html',
took => $took,
total => $data->{hits}->{total},
Expand Down Expand Up @@ -167,6 +178,27 @@ sub _calc_aggregated {
return [ \@aggregated, $latest ];
}

sub _get_river_for_dists {
my ( $self, $c, $dists ) = @_;

my $dist_search = {
query => {
bool => {
should => [ map { +{ term => { name => $_ } } } @{$dists} ],
},
},
size => 999,
};

my $dists_found
= $c->model('API::Distribution')
->request( '/distribution/_search', $dist_search )->recv;

my %river = map { $_->{_source}->{name} => $_->{_source}->{river} }
@{ $dists_found->{hits}->{hits} };
return \%river;
}

__PACKAGE__->meta->make_immutable;

1;
5 changes: 4 additions & 1 deletion root/inc/release-table.html
Expand Up @@ -11,7 +11,10 @@
<tbody>
<%- FOREACH release IN releases %>
<tr>
<td class="name"><strong><a href="/release/<% IF release.status == 'latest'; release.distribution; ELSE; release.author; '/'; release.name; END %>" class="ellipsis" title="<% release.author; '/'; release.name %>"><% release.name %></a></strong></td>
<td class="name">
<% release.river.bucket %>
<strong><a href="/release/<% IF release.status == 'latest'; release.distribution; ELSE; release.author; '/'; release.name; END %>" class="ellipsis" title="<% release.author; '/'; release.name %>"><% release.name %></a></strong>
</td>
<td class="abstract"><% IF release.abstract; release.abstract; END %></td>
<td class="date relatize" sort="<% release.date.dt_http %>"><% release.date.dt_http %></td>
</tr>
Expand Down

0 comments on commit 4ff5cbd

Please sign in to comment.