chiark / gitweb /
routesearch: link to full voyage plans
[ypp-sc-tools.db-live.git] / yarrg / web / query_age
index a90ca3469811b249d5d9c3cde0364d63a136662b..d9b234dd559e074353641f7c1ccd5fae7f9b4916 100644 (file)
@@ -69,6 +69,7 @@ $sth->execute();
 % my %da_ages;
 % my %ts_sortkeys;
 % $da_ages{'id_loaded'}= 0;
+% my $rowix= 0;
 % while ($row=$sth->fetchrow_hashref) {
 %      my $rowid= "id_$row->{'islandid'}";
 %      my $cellid= "c$rowid";
@@ -76,19 +77,46 @@ $sth->execute();
 %      $ts_sortkeys{'0'}{$rowid}= $row->{'archipelago'};
 %      $ts_sortkeys{'1'}{$rowid}= $row->{'islandname'};
 %      $da_ages{$rowid}= $age;
-<tr id=<% $rowid %>
+<tr id=<% $rowid %> class="<% 'datarow'.($rowix & 1) %>"
    > <td><% $row->{'archipelago'} |h
   %> <td><% $row->{'islandname'} |h
-  %> <td id="<% $cellid %>"><% prettyprint_age($age) %> </tr>
+  %> <td id="<% $cellid %>" align=right><% prettyprint_age($age) %> </tr>
+%      $rowix++;
 % }
 </table>
 
-<& tabsort, table => 'ts_table', cols => [
+<& SELF:dataages, id2age => \%da_ages, elemidprefix => "'c'+" &>
+<%method dataages>
+<%args>
+  $id2age
+  $elemidprefix => ''
+</%args>
+<&| script &>
+  function da_Refresh() {
+    var now= Date.now();
+    debug('updating now='+now);
+    for (var ageid in da_ages) {
+      var oldage= da_ages[ageid];
+      var el= document.getElementById(<% $elemidprefix %>ageid);
+      var age= oldage + (now - da_pageload) / 1000;
+      var newhtml= <% meta_prettyprint_age('age','Math.floor','+') %>;
+      el.innerHTML= newhtml;
+    }
+  }
+  da_ages= <% to_json_protecttags($id2age) %>;
+  window.setInterval(da_Refresh, 10000);
+  register_onload(da_Refresh);
+</&>
+</%method>
+
+<&| tabsort, table => 'ts_table', rowclass => 'datarow', cols => [
        {}, {},
        { DoReverse => 1,
          Numeric => 1,
          SortKey => "da_ages[rowid]" }]
   &>
+  ts_sortkeys= <% to_json_protecttags(\%ts_sortkeys) %>;
+</&tabsort>
 
 <p>
 Time since this page loaded:
@@ -99,36 +127,6 @@ Time since this page loaded:
 <& "lookup:formhidden", ours => sub { 0; } &>
 </form>
 
-<&| script &>
-  ts_sortkeys= <% to_json_protecttags(\%ts_sortkeys) %>;
-  da_ages= <% to_json_protecttags(\%da_ages) %>;
-
-  function da_Refresh() {
-    var now= Date.now();
-    debug('updating now='+now);
-    for (var rowid in da_ages) {
-      var oldage= da_ages[rowid];
-      var cellid= 'c'+rowid;
-      var el= document.getElementById(cellid);
-      var age= oldage + (now - da_pageload) / 1000;
-      var newhtml= <% meta_prettyprint_age('age','Math.floor','+') %>;
-% if ($ARGS{debug}) {
-      if (cellid == 'cid_loaded')
-       debug('element rowid='+rowid+' cellid='+cellid
-               +' oldage='+oldage+' age='+age+': '+newhtml);
-% }
-      el.innerHTML= newhtml;
-    }
-  }
-
-  function all_onload() {
-    ts_onload__ts_table();
-    da_Refresh();
-  }
-  window.onload= all_onload;
-  window.setInterval(da_Refresh, 10000);
-</&script>
-
 <%init>
 use POSIX;
 use CommodsWeb;