use eval_console for items and facets
[MojoFacets.git] / templates / data / items / table.html.ep
index e8578ae..0b77366 100644 (file)
@@ -1,10 +1,19 @@
+%#<pre class=debug><%= dumper $cols_changed %></pre>
 <table border=1>
 
 <tr>
+% my $commit = param('commit');
 % foreach my $n ( @$columns ) {
+% if ( defined $cols_changed->{$n} && ! $commit ) {
+<th class=<%= $cols_changed->{$n} ? 'changed' : 'used' %>>
+<%= $n %>
+% } else {
 <th>
+% if ( $unique->{$n} ) {
+<span title="unique">&#9997;</span>
+% }
 % if ( session('order') ne $n ) {
-<a href="<%= url_for( action => 'order' )->query( order => $n ) %>"><%= $n %></a>
+<a href="<%= url_for( action => 'order' )->query( order => $n, sort => 'a' ) %>"><%= $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' ? '&uarr;' : '&darr;' %>
@@ -19,14 +28,21 @@ filter
 % }
 </a>
 </div>
+
+% }
 </th>
 % }
 </tr>
 
 % foreach my $row ( @$sorted ) {
-<tr>
+<tr title="<%= $row->{_row_id} %>">
 % foreach my $col ( @$columns ) {
-<td<%= $numeric->{$col} ? ' class=numeric' : '' %>>
+%  my @class ;
+%  push @class, 'numeric' if $numeric->{$col};
+%  if ( defined $cols_changed->{$col} ) {
+%   push @class, $cols_changed->{$col} ? 'changed' : 'used';
+%  }
+<td class="<%= join(' ',@class) %>">
 %  if ( ref $row->{$col} eq 'ARRAY' ) {
 %   my $last = $#{ $row->{$col} };
 %   foreach ( 0 .. $last ) {
@@ -46,3 +62,39 @@ filter
 % } # sorted
 
 </table>
+<form id=eval method=post style="<%= $code ? '' : 'display:none' %>">
+
+% my $error = stash('eval_error');
+% if ( $error ) {
+<tt class=error><%= $error %></tt>
+% }
+
+% if ( $out ) {
+<pre id=out><%= dumper $out %></pre>
+% }
+
+% my $rows = scalar split(/\n/,$code);
+<textarea name=code rows=<%= $rows %>><%= $code %></textarea>
+<input name=test   type=submit value="Test code">
+
+% if ( param('test') ) {
+<a href="">reload original</a>
+%   if ( ! $error ) {
+<input name=commit type=submit value="Commit changes" style="color:red">
+%   }
+% }
+
+% if ( $code_depends ) {
+<input name=code_depends value="<%= $code_depends %>">.<input name=code_description type=text value="<%= $code_description %>">.pl
+%  my $path = "$code_path/$code_depends.$code_description.pl";
+%  if ( -e $path ) {
+<input type=checkbox name=overwrite value=1 title="Overwrite old version of this code">
+%  }
+% }
+
+<input id=close name=close  type=button value="Close" style="float: right">
+</form>
+
+<script type="text/javascript" src="/js/eval_console.js"></script>
+<script type="text/javascript" src="/edit_table.js"></script>
+