fix last bugs, make stexaminer work under new regime
Tara L Andrews [Fri, 2 Mar 2012 12:37:14 +0000 (13:37 +0100)]
lib/stemmaweb/Controller/Stexaminer.pm
root/src/stexaminer.tt

index 46c0359..1449ad2 100644 (file)
@@ -3,7 +3,7 @@ use Moose;
 use namespace::autoclean;
 use File::Temp;
 use JSON;
-use Text::Tradition::Analysis qw/ run_analysis /;
+use Text::Tradition::Analysis qw/ run_analysis wit_stringify /;
 
 BEGIN { extends 'Catalyst::Controller' }
 
@@ -38,6 +38,15 @@ sub index :Path :Args(1) {
                $c->stash->{template} = 'stexaminer.tt'; 
                # TODO Run the analysis as AJAX from the loaded page.
                my $t = run_analysis( $tradition );
+               # Stringify the reading groups
+               foreach my $loc ( @{$t->{'variants'}} ) {
+                       my $mst = wit_stringify( $loc->{'missing'} );
+                       $loc->{'missing'} = $mst;
+                       foreach my $rhash ( @{$loc->{'readings'}} ) {
+                               my $gst = wit_stringify( $rhash->{'group'} );
+                               $rhash->{'group'} = $gst;
+                       }
+               }
                $c->stash->{variants} = $t->{'variants'};
                $c->stash->{total} = $t->{'variant_count'};
                $c->stash->{genealogical} = $t->{'genealogical_count'};
index 2e2ad71..4298e0b 100644 (file)
@@ -29,7 +29,7 @@
 [% FOREACH reading IN row.readings -%]
 [% SET cellclass = 'clickable conflict' IF reading.conflict -%]
 [% SET cellclass = 'clickable' IF !reading.conflict -%]
-          <td class="[% cellclass %]"><span onclick="color_nodes($(this).parent().index(), [% reading.group %], [% reading.missing %]);$(this).parents('tr').addClass('active_variant_row');$(this).parent().addClass('active_variant_cell cellb'+($(this).parent().index()-1))">[% reading.text %]</span></td>
+          <td class="[% cellclass %]"><span onclick="color_nodes($(this).parent().index(), [% reading.group %], [% row.missing %]);$(this).parents('tr').addClass('active_variant_row');$(this).parent().addClass('active_variant_cell cellb'+($(this).parent().index()-1))">[% reading.text %]</span></td>
 [% END -%]
 [% FILTER repeat( row.empty ) -%]
           <td/>