better error handling of missing / forbidden traditions
[scpubgit/stemmatology.git] / stemmaweb / root / src / stexaminer.tt
CommitLineData
23306161 1[% WRAPPER header.tt
cf9626aa 2 pagetitle = "Stexaminer - $text_title"
57acbbe2 3 applicationjs = c.uri_for('/js/stexaminer.js')
4 applicationstyle = c.uri_for('/css/stexaminer.css')
cf9626aa 5%]
23306161 6<script type="text/javascript">
5f810e4f 7var baseurl = "[% c.uri_for( '/stexaminer/' ) %]";
8var textid = '[% text_id %]';
f7b9631d 9[% IF error -%]
10var readingstats = [];
11[% ELSE -%]
23306161 12var readingstats = [% reading_statistics %];
f7b9631d 13[% END -%]
f8d13166 14var graphdot = '[% graphdot %]';
23306161 15</script>
16[% END -%]
7b7abf10 17 <div id="topbanner">
18 <div id="bannerinfo">
5d9fd8da 19 <a href="help" title="Stexaminer help" class="navlink" id="aboutlink">Help / About</a> | <a href="[% c.uri_for( '/' ) %]?withtradition=[% text_id %]" title="Index" class="navlink">Return to index</a>
7b7abf10 20 </div>
21 <h1>Stexaminer</h1>
22 <h2>[% text_title %]</h2>
26cea87c 23 <p><span class="navlink" onClick="$('#options').dialog('open')">Analysis options</span></p>
e217c221 24 </div>
f7b9631d 25 <div id="status">
26[% IF error -%]
27 <span class="error">[% error %]</span>
28[% END -%]
29 </div>
cf9626aa 30 <div id="variants_table">
31 <table>
32[% FOREACH row IN variants -%]
33[% INCLUDE variantrow %]
34[% END -%]
35 </table>
36 </div>
f8d13166 37 <div>
38 <div id="stemma_graph">
39 [% svg %]
40 </div>
41 <div id="row_statistics">
42 <h3>Aggregate text statistics</h3>
43 <ul>
44 <li>Total number of variant locations analyzed: [% total %]</li>
45 <li>Number of fully genealogical locations: [% genealogical %]</li>
46 <li>Number of readings that conflict with the stemma: [% conflict %]</li>
47 <li>Genealogical reading transitions by relationship type: [% todo %]</li>
48 </ul>
49 <p>(Choose a row in the table to display statistics about individual readings.)</p>
50 </div>
23306161 51 </div>
3751a3c2 52
53 <div id="stats_template" class="template">
54 <h3>Statistics for readings at <span id="statrank"></span>:</h3>
55 <!-- reading_template will be appended here for each reading -->
a9426c6d 56 <span class="solutionstatus"></span>
3751a3c2 57 </div>
58
f8d13166 59 <div id="reading_template" class="template">
3751a3c2 60 <div class="reading_statistics">
f8d13166 61 <span class="readinglabel"></span> - copied <span class="reading_copied"></span> time(s), changed <span class="reading_changed"></span> time(s)<br/>
3751a3c2 62 Reading root(s) at <span class="readingroots"></span><br/>
ee53ab0d 63 <span class="readingreversions">Reading reversion(s) at <span class="reversionroots"></span><br/></span>
64 <!-- source_parent_template will be appended here if there are parents -->
65 <!-- reversion_parent_template will be appended here if there are reversions -->
3751a3c2 66 </div>
23306161 67 </div>
3751a3c2 68
ee53ab0d 69 <div id="reading_source_template" class="template">
3751a3c2 70 <div class="parent_statistics">
71 Reading parent(s):
ee53ab0d 72 <ul class="reading_source_list"></ul>
73 </div>
74 </div>
75 <div id="reading_reversion_template" class="template">
76 <div class="parent_statistics">
77 Reverted reading parent(s):
78 <ul class="reading_reversion_list"></ul>
3751a3c2 79 </div>
80 </div>
26cea87c 81
82 <div id="options" title="Analysis options...">
83 <form id="use_variants_form" name="use_variants_form">
84 <fieldset>
85 <input type="radio" name="ignore_variant" value="none" [% 'checked="true"' IF ignore_variant == 'none' %]>Analyze all variation</input><br/>
86 <input type="radio" name="ignore_variant" value="orthographic" [% 'checked="true"' IF ignore_variant == 'orthographic' %]>Ignore orthographic variation</input><br/>
87 <input type="radio" name="ignore_variant" value="spelling" [% 'checked="true"' IF ignore_variant == 'spelling' %]>Ignore orthographic and spelling variation</input>
88 </fieldset>
89 <fieldset>
90 <input type="checkbox" name="show_type1" [% 'checked="true"' IF show_type1 %]>Include type-1 variation</input>
91 </fieldset>
92 </form>
93 </div>
94
23306161 95
cf9626aa 96[% PROCESS footer.tt %]
97
6b70c348 98
99[% BLOCK variantrow -%]
a9426c6d 100[% SET rowclass = 'coincidental' -%]
101[% SET rowclass = 'genealogical' IF row.genealogical -%]
102[% SET rowclass = "$rowclass unsolved" IF row.unsolved -%]
103 <tr class="[% rowclass %]">
f8d13166 104 <th><span class="rowid" onclick="handle_row_click($(this))">[% row.id %]</span></th>
6b70c348 105[% FOREACH reading IN row.readings -%]
ee53ab0d 106[% SET cellclass = 'clickable' -%]
107[% SET cellclass = 'clickable reversion' IF reading.is_reverted -%]
108[% SET cellclass = 'clickable conflict' IF reading.is_conflict -%]
a44aaf2a 109 <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>
6b70c348 110[% END -%]
6b70c348 111 </tr>
112[% END -%]