% layout 'default';
-<h1>Code snippets</h1>
+<form>
+Show code snippets for
+% if ( ! param('all_columns') ) {
+<input name=all_columns type=submit value="any">
+% } else {
+<input type=submit value="visible">
+% }
+column in this dataset
+% if ( ! param('all_code') ) {
+·
+<input name=all_code type=submit value="all code snippets">
+% }
+</form>
-% foreach my $column ( @{ session('columns') } ) {
-% next unless defined $snippets->{$column};
-<h2><%= $column %></h2>
+% foreach my $depends ( keys %$snippets ) {
+<h2><%= $depends %></h2>
<ul>
-% foreach my $desc ( keys %{ $snippets->{$column} } ) {
+% foreach my $desc ( keys %{ $snippets->{$depends} } ) {
+% my $have_deps = ! exists $no_deps->{$depends}->{$desc};
<li>
<form method=post action=/data/items>
-<input type=submit name=test value="Load and test">
-<a href="/code/<%= $column . '.' . $desc %>"><%= $desc %></a>
+<input type=submit name=<%= $have_deps ? 'test' : 'load' %> value="<%= $have_deps ? 'Load and test' : 'Load' %>">
+% my $path = "$depends.$desc.pl";
+<a target=code href="/code/<%= $path %>"><%= $desc %></a>
+% if ( $have_deps ) {
+<input type=hidden name=code_depends value="<%= $depends %>">
+<input type=hidden name=code_description value="<%= $desc %>">
+% }
+<a class=remove href="<%= url_for( action => 'remove' )->query( path => $path ) %>">remove</a>
<br>
-% my $code = $snippets->{$column}->{$desc};
+% my $code = $snippets->{$depends}->{$desc};
% my $rows = scalar split(/\n/,$code);
-<textarea name=code cols=80 rows=<%= $rows %>>
+<textarea name=code rows=<%= $rows %> style="overflow:hidden; width: 100%">
<%= $code %>
</textarea>
</form>