--- trunk/share/web/templates/fragments/queries 2007/02/05 20:48:15 90 +++ trunk/share/web/templates/fragments/queries 2007/02/16 22:21:07 100 @@ -1,7 +1,8 @@ <%args> $on_database => undef -$created_on => undef; +$created_on => undef $order +$reformat => 0 <%init> my $queries = SQLSession::Model::QueryCollection->new(); @@ -29,7 +30,7 @@ foreach my $c ( qw/name created_on owner/ ) { #next if ($c eq $order); $sort_menu->child( $c, - #active => $c eq $order, + active => $c eq $order, link => Jifty->web->link( label => $sort_label->{$c}, onclick => { @@ -59,17 +60,18 @@ ), ) if ($created_on); -my $dates; - # select created_on,count(date(created_on)) from queries group by date(created_on) order by created_on; -my $date_coll = SQLSession::Model::QueryCollection->new(); +my $date_coll = SQLSession::Model::QueryCollection->new( results_are_readable => 1 ); my $created_on_date = $date_coll->column( function => 'date(created_on)', column => 'date' ); my $count = $date_coll->column( function => 'count(date(created_on))', column => 'count' ); $date_coll->group_by( function => $created_on_date ); $date_coll->order_by( column => 'date', order => 'DESC' ); $date_coll->unlimit; +$date_coll->limit( column => 'on_database', value => $on_database ) if ( $on_database ); + +#warn "## ", $date_coll->build_select_query; -warn "## ", $date_coll->build_select_query; +my $dates = 0; while (my $q = $date_coll->next) { my $date = $q->{values}->{date} || die "no date?"; @@ -88,16 +90,23 @@ }, ), ); + + $dates++; # why is this different from $date_coll->count ? } -use Data::Dump qw/dump/; -warn "dates = ",dump( $dates ); +my $u; +if ($reformat) { + use SQLSession::Utils qw(reformat_sql); + $u = Jifty->app_class('Utils'); +}
<% $sort_menu->render_as_context_menu %> +% if ( $dates > 0 ) { <% $date_menu->render_as_context_menu %> +% }
@@ -130,7 +139,9 @@ % if ($q->note) {
<% $q->note %>
% } -
<% $q->sql_query %>
+% my $sql = $q->sql_query; +% $sql = $u->reformat_sql( $sql ) if ($reformat); +
<% $sql %>
% }