/[SQLSession]/trunk/share/web/templates/sql
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/share/web/templates/sql

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 77 by dpavlin, Thu Jan 25 19:55:30 2007 UTC revision 78 by dpavlin, Mon Jan 29 20:11:20 2007 UTC
# Line 1  Line 1 
1  <%args>  <%args>
2  $sth => undef  $sth => undef
3    $q => undef
 $sql_query => undef  
 $name => undef  
 $database => undef  
   
4  $max_rows => 100  $max_rows => 100
   
5  </%args>  </%args>
 <%init>  
   
 my $execute_sql = Jifty->web->new_action(  
         class => 'DoSQL',  
         moniker => 'execute_sql',  
 );  
   
 my $result = Jifty->web->response->result('execute_sql');  
 $sth = $result->content('sth') if $result and !defined $sth;  
   
 my $edit = Jifty->web->current_user->role('edit');  
 warn $edit ? 'edit mode for SQL' : 'student mode';  
   
 </%init>  
6    
7  <&| /_elements/wrapper, title => "Try out SQL query" &>  <&| /_elements/wrapper, title => "Try out SQL query" &>
 <% Jifty->web->form->start() %>  
 % if ( Jifty->web->current_user->id ) {  
 <% $execute_sql->form_field('sql_query',  
         default_value => $sql_query,  
         cols => 80,  
         rows => 12,  
 ) %>  
 % } else {  
 <% $execute_sql->hidden('sql_query', $sql_query ) %>  
 <% $execute_sql->form_value('sql_query', default_value => $sql_query ) %>  
 % }  
   
 <div class="database-schema">  
 <%perl>  
 my $db = SQLSession::Model::Database->new();  
 $db->load_by_cols( id => $database );  
 my $name = $db->dsn;  
 $name =~ s/^.*dbname=//;  
 $m->out("<a href=\"/static/spy/$name/index.html\" target=\"_spy\">$name shema</a>");  
 </%perl>  
 </div>  
   
 % if ( $edit ) {  
 <% $execute_sql->form_field('database', default_value => $database ) %>  
 % } else {  
   
 <!-- hidden database -->  
 <% $execute_sql->hidden('database', $database ) %>  
 <% $execute_sql->form_value('database', default_value => $database ) %>  
   
 % }  
   
 <div class="submit_button">  
 <% $execute_sql->button( label => 'Try it!' ) %>  
   
   
 % if ( defined($sth) ) {  
   
 % if ( $edit ) {  
8    
9  % warn "save SQL: ", $execute_sql->argument_value('sql_query');  <% Jifty->web->region(
10            name => 'query',
11  <% Jifty->web->link(          path => '/fragments/enter_query',
         label => 'Save',  
         onclick => {  
                 region => 'save_query',  
                 replace_with => '/save',  
                 args => {  
                         sql_query => $execute_sql->argument_value('sql_query'),  
                         database => $execute_sql->argument_value('database'),  
                 },  
                 refresh_self => 1,  
                 toggle => 1,  
         },  
         as_button => 1,  
12  ) %>  ) %>
13    
 </div><!-- submit_button edit -->  
   
14  <% Jifty->web->region(  <% Jifty->web->region(
15          name => 'save_query',          name => 'results',
16            path => '/fragments/results',
17  ) %>  ) %>
18    
 % } else {  
   
 </div><!-- submit_button no edit -->  
   
 % }  
   
 <% Jifty->web->form->end() %>  
   
 <table class="sql-result-table" cellpadding="3" cellspacing="0" border="1">  
   
 <tr>  
 % foreach my $col ( @{ $sth->{'NAME'} } ) {  
 <th><% $col %></th>  
 % }  
 </tr>  
   
 % my $rows = 0;  
 % while ( my @row = $sth->fetchrow_array() ) {  
 %       last if (++$rows > $max_rows);  
 <tr>  
 %       foreach my $v ( @row ) {  
 <td><% defined($v) ? $v : 'NULL' %></td>  
 %       }  
 </tr>  
 % }  
   
 </table>  
   
 % if ($sth->rows > $max_rows) {  
 <div class="note">  
 Query produced more than <% $max_rows %> rows, try adding <tt>LIMIT</tt> and  
 <tt>OFFSET</tt> to see another part of results.  
 </div>  
 % }  
   
 % } else {  
   
 </div><!-- submit_button no query -->  
 <% Jifty->web->form->end() %>  
   
 % }  
   
19  <% Jifty->web->return( label => "Go back" ) %>  <% Jifty->web->return( label => "Go back" ) %>
20    
21  </&>  </&>

Legend:
Removed from v.77  
changed lines
  Added in v.78

  ViewVC Help
Powered by ViewVC 1.1.26