Added badges to users and pagination

This commit is contained in:
Tom Bloor 2017-11-20 13:26:52 +00:00
parent bccb292441
commit 9aaf3b4718
No known key found for this signature in database
GPG key ID: 4657C7EBE42CC5CC
2 changed files with 32 additions and 7 deletions

View file

@ -22,9 +22,15 @@ has organisation_result_set => sub {
sub index { sub index {
my $c = shift; my $c = shift;
my $user_rs = $c->user_result_set; my $user_rs = $c->user_result_set->search(
$user_rs->result_class('DBIx::Class::ResultClass::HashRefInflator'); undef, {
$c->stash( users => [ $user_rs->all ] ); prefech => { entity => [ qw/ customer organisation / ] },
page => $c->param('page') || 1,
rows => 10,
order_by => { -asc => 'email' },
}
);
$c->stash( user_rs => $user_rs );
} }
sub read { sub read {

View file

@ -12,11 +12,30 @@
</div> </div>
% } % }
<div class="list-group"> <div class="list-group">
% for my $user (@$users) { % for my $user ($user_rs->all) {
<a href="<%= url_for . '/' . $user->{id} %>" class="list-group-item list-group-item-action"> <a href="<%= url_for . '/' . $user->id %>" class="list-group-item list-group-item-action">
<div> <div class="row">
%= $user->{email} <div class="col-4">
%= $user->name
</div>
<div class="col-4 text-center">
%= $user->email
</div>
<div class="col-4 text-right">
% if ( $user->type eq 'customer' ) {
<span class="badge badge-success">Customer</span>
% } elsif ( $user->type eq 'organisation' ) {
<span class="badge badge-info">Organisation</span>
% } else {
<span class="badge badge-danger">Unknown</span>
% }
</div>
</div> </div>
</a> </a>
% } % }
</div> </div>
<div class="row">
<div class="col">
%= bootstrap_pagination( $c->param('page') || 1, $user_rs->pager->last_page, { class => 'justify-content-center' } );
</div>
</div>