Merge branch 'authentication' of github.com:tla/stemmatology
[scpubgit/stemmatology.git] / stemmaweb / root / js / stexaminer.js
index 106edf3..7469615 100644 (file)
@@ -1,5 +1,26 @@
 var colors = ['#ffeeaa','#afc6e9','#d5fff6','#ffccaa','#ffaaaa','#e5ff80','#e5d5ff','#ffd5e5'];
 var row_triggered = false;
+var original_svg;
+
+function handle_row_click( row ) {
+       var ridx = row.parent().parent().index()
+       var rs = readingstats[ridx];
+    var imghtml = '<img src="../images/ajax-loader.gif" alt="Loading SVG..."/>'
+    $('#stemma_graph').empty();
+    $('#stemma_graph').append( imghtml );
+       if( rs.layerwits ) {
+               var stemma_form = { 'dot': graphdot, 'layerwits': rs.layerwits };
+               $('#stemma_graph').load( 'graphsvg', stemma_form, function() {
+                       color_row( row );
+                       show_stats( rs );
+               });
+       } else {
+               $('#stemma_graph').empty();
+               $('#stemma_graph').append( original_svg );
+               color_row( row );
+               show_stats( rs );
+       }
+}
 
 function color_row( row ) {
     row_triggered = true;
@@ -38,22 +59,16 @@ function color_nodes( column_index, arr_node_ids, arr_greynode_ids ) {
   });
 }
 
-function show_stats( row_index ) {
-       var rs = readingstats[row_index];
+function show_stats( rs ) {
        var rshtml = $('#stats_template').clone();
        rshtml.find('#statrank').append( rs.id );
        $.each( rs.readings, function( idx, rdghash ) {
-               var readinglabel = rdghash.readingid;
-               if( rdghash.text ) {
-                       readinglabel += ' (' + rdghash.text + ')';
-               }
-               var readingroots = rdghash.independent_occurrence.join( ', ' );
                var rdgstats = $('#reading_template').clone();
-               rdgstats.find('.readinglabel').append( readinglabel );
+               rdgstats.find('.readinglabel').append( rdghash.text );
                rdgstats.find('.reading_copied').append( rdghash.followed );
                rdgstats.find('.reading_changed').append( rdghash.not_followed );
                rdgstats.find('.reading_unclear').append( rdghash.follow_unknown );
-               rdgstats.find('.readingroots').append( readingroots );
+               rdgstats.find('.readingroots').append( rdghash.independent_occurrence );
                if( ! $.isEmptyObject( rdghash.reading_parents ) ) {
                        var parentstats = $('#reading_parent_template').clone();
                        $.each( rdghash.reading_parents, function( parentid, pdata ) {
@@ -76,3 +91,31 @@ function show_stats( row_index ) {
        $('#row_statistics').empty();
        $('#row_statistics').append( rshtml.contents() );
 };
+
+// Save the original unextended SVG for when we need it.
+$(document).ready(function () {
+       original_svg = $('#stemma_graph > svg').clone();
+       
+       $('#aboutlink').popupWindow({ 
+               height:500, 
+               width:800, 
+               top:50, 
+               left:50,
+               scrollbars:1 
+       }); 
+       $('#options').dialog({
+               autoOpen: false,
+               height: 200,
+               width: 300,
+               modal: true,
+               buttons: {
+                       Cancel: function() {
+                               $(this).dialog( "close" );
+                       },
+                       Reanalyze: function() {
+                               $('#use_variants_form').submit();
+                       },
+               }
+       });
+
+});