add more robust download functionality; convert to new API in Stexaminer::graphsvg
[scpubgit/stemmaweb.git] / root / src / index.tt
index 580da1c..924a82d 100644 (file)
@@ -12,7 +12,7 @@ var textOnLoad = "[% withtradition %]";
 [% END %]
    <div id="main_page" class="clearfix">
    <div class="mainnav">
-       <span>[% IF c.user_exists %]Hello! [% c.user.get_object.email %]! &nbsp; <a class="navlink" href="[% c.uri_for( '/logout' ) %]">Sign out</a> | [% ELSE %]<a class="navlink" onclick="window.open('[% c.uri_for( '/login' ) %]', 'loginwindow', 'height=385,width=445')">Login</a> | [% END %]<a class="navlink" href="[% c.uri_for( '/about' ) %]">About Stemmaweb</a> </span>
+       <span>[% IF c.user_exists %]Hello! [% c.user.get_object.email %]! &nbsp; <a class="navlink" href="[% c.uri_for( '/logout' ) %]">Sign out</a> | [% ELSE %]<a class="navlink" onclick="window.open('[% c.uri_for( '/login' ) %]', 'loginwindow', 'height=385,width=445')">Sign in/Register</a> | [% END %]<a class="navlink" href="[% c.uri_for( '/about' ) %]">About Stemmaweb</a> </span>
    </div>
     <div id="topbanner">
       <h1 class="title">Stemmaweb - a collection of tools for analysis of collated texts</h1>
@@ -91,11 +91,12 @@ var textOnLoad = "[% withtradition %]";
               <span id='relatebutton_label'>View collation and relationships</span>
             </div>
           </form>
-          <a id="dl_tradition" href="" download="file.xml">
-            <div class="button" id="download_button">
-              <span id='dlbutton_label'>Download tradition as XML</span>
+          <form id="dl_tradition" action="" method="GET" name="run_downloader">
+            <div class="button" id="download_button"
+               onClick="$('#download-dialog').dialog('open');">
+              <span id='dlbutton_label'>Download tradition</span>
             </div>
-          </a>
+          </form>
       </div>
       <div id="stemma_load_status"></div>
       <div id="stemma_graph"></div>
@@ -176,6 +177,25 @@ var textOnLoad = "[% withtradition %]";
       </div>
     </div>
     
+    <!-- Data download dialog box -->
+    <div id="download-dialog" title="Download tradition data">
+      <div id="download_container">
+       <form id="download_form">
+               <input id="download_tradition" type="hidden" name="tradition"/><br/>
+               <label for="download_format">Choose a format for download: </label>
+               <select id="download_format" name="format">
+                       <option value="GraphML">Native XML format</option>
+                       <option value="CSV">Comma-separated values (collation only)</option>
+                       <option value="TSV">Tab-separated values (collation only)</option>
+                       <option value="SVG">SVG graph display (collation and relationships)</option>                            
+                       <!-- option value="tei_ps" -->
+                       <!-- option value="tei_dea" -->
+               </select>
+       </form>
+       <div id="download_status"></div>
+      </div>
+    </div>    
+    
     <!-- File upload dialog box -->
     <div id="upload-collation-dialog" title="Upload a collation">
       <div id="upload_container">