% layout 'default';
+<style type="text/css">
+table {
+ border-collapse: collapse;
+}
+th {
+ white-space: nowrap;
+ background: #eee;
+}
+td.numeric {
+ text-align: right;
+}
+</style>
+
+<form class=info>
+<b><%= $rows %></b> items
+
+% my $filters = session('filters');
+% my @filters_active = keys %$filters;
+% if ( @filters_active ) {
+filter
+% foreach my $n ( @filters_active ) {
+<a href="<%= url_for( action => 'facet' )->query( remove => $n ) %>"
+ title="<%= join(', ', @{ $filters->{$n} }) %>"><%= $n %></a>
+% }
+<span class=count><%= $#filters_active + 1 %> active click to remove</span>
+% }
+
+showing
+
+<select name=limit>
+% foreach my $on_page ( 10,20,50,100,1000 ) {
+<option <%= $limit == $on_page ? 'selected' : '' %>><%= $on_page %></option>
+% }
+</select>
+
+items
+
+<span class=count><%= $offset + 1 %>-<%= $offset + $limit %></span>
+
+<input type=submit value="refresh">
+
+</form>
+
<table border=1>
<tr>
% foreach my $n ( @$columns ) {
-<th><%= $n %> <a href="<%= url_for( action => 'facet' )->query( name => $n ) %>">#</a>
+<th>
+<a href="<%= url_for( action => 'facet' )->query( name => $n ) %>"><%== $filters->{$n} ? '♦' : '◊' %></a>
+% if ( session('order') ne $n ) {
+<a href="<%= url_for( action => 'order' )->query( order => $n ) %>"><%= $n %></a>
+% } else {
+<a href="<%= url_for( action => 'order' )->query( order => $n, sort => session('sort') eq 'a' ? 'd' : 'a' ) %>"><%= $n %></a>
+<%== session('sort') eq 'a' ? '↑' : '↓' %>
+% }
</th>
% }
</tr>
% foreach my $row ( @$sorted ) {
<tr>
% foreach my $col ( @$columns ) {
-<td><%= ref $row->{$col} eq 'ARRAY' ? join(', ',@{ $row->{$col} }) : $row->{$col} %></td>
+<td<%= $numeric->{$col} ? ' class=numeric' : '' %>><%= ref $row->{$col} eq 'ARRAY' ? join(', ',@{ $row->{$col} }) : $row->{$col} %></td>
% }
</tr>
% }
% }
</div>
-% my $filters = session('filters');
-% if ( keys %$filters ) {
-<div class=filters>
-<h2>Filters active</h2>
-<ul>
-% foreach my $n ( keys %$filters ) {
-<li><a href="<%= url_for( action => 'facet' )->query( remove => $n ) %>"><%= $n %></a>
-<%= join(', ', @{ $filters->{$n} }) %>
-% }
-</ul>
-</div>
-% }
-
<ul class=debug>
<li>rows: <%= $rows %> offset: <%= $offset %> limit: <%= $limit %>
<li>columns: <%= join(',',@$columns) %>
+<li>numeric: <%= dumper $numeric %>
+<li>order: <%= session('order') %> sort: <%= session('sort') %>
</ul>