--- trunk/share/web/templates/fragments/queries 2007/02/05 22:04:59 94 +++ trunk/share/web/templates/fragments/queries 2007/04/27 23:49:22 115 @@ -1,7 +1,8 @@ <%args> $on_database => undef -$created_on => undef; +$created_on => undef $order +$reformat => 0 <%init> my $queries = SQLSession::Model::QueryCollection->new(); @@ -19,6 +20,10 @@ #warn $queries->build_select_query,$/; +### +### sort by +### + my $sort_label = { name => 'Query name', created_on => 'Creation date', @@ -35,8 +40,6 @@ onclick => { replace_with => '/fragments/queries', args => { - on_database => $on_database || '', - created_on => $created_on || '', order => $c, }, }, @@ -44,6 +47,10 @@ ); } +### +### date filter +### + my $date_menu = Jifty::Web::Menu->new( label => 'Date filter' . ( $created_on ? ": $created_on" : '' ) ); $date_menu->child( 'clear', link => Jifty->web->link( @@ -51,9 +58,7 @@ onclick => { replace_with => '/fragments/queries', args => { - on_database => $on_database || '', created_on => '', - order => $order, }, }, ), @@ -66,6 +71,7 @@ $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; @@ -81,9 +87,7 @@ onclick => { replace_with => '/fragments/queries', args => { - on_database => $on_database || '', created_on => $date, - order => $order, }, }, ), @@ -92,6 +96,12 @@ $dates++; # why is this different from $date_coll->count ? } +my $u; +if ($reformat) { + use SQLSession::Utils; + $u = Jifty->app_class('Utils'); +} +
@@ -99,11 +109,23 @@ % if ( $dates > 0 ) { <% $date_menu->render_as_context_menu %> % } +
% $queries->goto_first_item; % while (my $q = $queries->next) { +
visible ? '' : ' class=invisible' %>>
<% Jifty->web->tangent( url => '/sql/' . $q->id, label => $q->name, @@ -131,7 +153,10 @@ % if ($q->note) {
<% $q->note %>
% } -
<% $q->sql_query %>
+% my $sql = $q->sql_query; +% $sql = $u->reformat_sql( $sql ) if ($reformat); +
<% $sql %>
+
% }