fixes to code eval
[MojoFacets.git] / templates / data / items / table.html.ep
1
2 <table border=1>
3
4 <tr>
5 % foreach my $n ( @$columns ) {
6 <th>
7 % if ( session('order') ne $n ) {
8 <a href="<%= url_for( action => 'order' )->query( order => $n, sort => 'a' ) %>"><%= $n %></a>
9 % } else {
10 <a href="<%= url_for( action => 'order' )->query( order => $n, sort => session('sort') eq 'a' ? 'd' : 'a' ) %>"><%= $n %></a>
11 <%== session('sort') eq 'a' ? '&uarr;' : '&darr;' %>
12 % }
13 <div class="col_opts">
14 <a title="filter by this facet" href="<%= url_for( action => 'facet' )->query( name => $n, all => 0 ) %>">
15 % if ( defined $filters->{$n} ) {
16 <%= $#{ $filters->{$n} } + 1 %></a>&nbsp;
17 <a title="show all values" href="<%= url_for( action => 'facet' )->query( name => $n, all => 1 ) %>">all
18 % } else {
19 filter
20 % }
21 </a>
22 </div>
23 </th>
24 % }
25 </tr>
26
27 % foreach my $row ( @$sorted ) {
28 <tr title="<%= $row->{_row_id} %>">
29 % foreach my $col ( @$columns ) {
30 <td<%= $numeric->{$col} ? ' class=numeric' : '' %>>
31 %  if ( ref $row->{$col} eq 'ARRAY' ) {
32 %   my $last = $#{ $row->{$col} };
33 %   foreach ( 0 .. $last ) {
34 <%= $row->{$col}->[$_] %>
35 %    if ( $_ < $last ) {
36 <span class=d>&para;</span>
37 %    }
38 %   }
39 %  } elsif ( ref $row->{$col} ) {
40 <pre class=debug><%= dumper $row->{$col} %></pre>
41 %  } else {
42 <%= $row->{$col} %>
43 %  }
44 </td>
45 % } # columns
46 </tr>
47 % } # sorted
48
49 </table>
50
51 <form id=eval method=post>
52 % if ( my $error = stash('eval_error') ) {
53 <div class=error><%= $error %></div>
54 % }
55 % my $rows = scalar split(/\n/,$code);
56 <textarea name=code rows=<%= $rows %>>
57 <%= $code %>
58 </textarea>
59 <input name=test   type=submit value="Test code">
60 <input name=commit type=submit value="Commit changes">
61 </form>
62
63 <script type="text/javascript" src="/edit_table.js"></script>
64 <script type="text/javascript" src="/js/jquery.textarea_grow.js"></script>
65 <script type="text/javascript">
66
67 $(document).ready( function(){
68         $('form#eval textarea').textarea_grow();
69 });
70
71 </script>