X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=ypp-sc-tools.db-live.git;a=blobdiff_plain;f=yarrg%2Fweb%2Fquery_age;h=7cfe54e291799e6c8daa53ec0207c0f4d37eeead;hp=e0591e3a20f69573fd72195366c1d17834b9b591;hb=6302552bfa5844eddb7c26386c9995733f0a5174;hpb=67d3ce955da83bcd2aae676e1092bc160277b21e diff --git a/yarrg/web/query_age b/yarrg/web/query_age index e0591e3..7cfe54e 100644 --- a/yarrg/web/query_age +++ b/yarrg/web/query_age @@ -46,31 +46,42 @@ $dbh <%perl> my $now= time; -my $row; my $sth= $dbh->prepare("SELECT archipelago, islandid, islandname, timestamp FROM uploads NATURAL JOIN islands - ORDER BY archipelago, islandid"); + ORDER BY archipelago, islandname"); $sth->execute(); +<& SELF:pageload &> +<%method pageload> <&| script &> da_pageload= Date.now(); +

Market data age

+<& SELF:agestable, now => $now, fetchrow => sub { $sth->fetchrow_hashref } &> + +<%method agestable> +<%args> + $now + $fetchrow + +% my $row; % my %da_ages; % my %ts_sortkeys; % $da_ages{'id_loaded'}= 0; % my $rowix= 0; -% while ($row=$sth->fetchrow_hashref) { +% while ($row= $fetchrow->()) { +% print STDERR "$row\n"; % my $rowid= "id_$row->{'islandid'}"; % my $cellid= "c$rowid"; % my $age= $now - $row->{'timestamp'}; @@ -80,65 +91,56 @@ $sth->execute(); class="<% 'datarow'.($rowix & 1) %>" > + %> % $rowix++; % }
Archipelago Island Age
<% $row->{'archipelago'} |h %> <% $row->{'islandname'} |h - %> <% prettyprint_age($age) %>
<% prettyprint_age($age) %>
+<& SELF:dataages, id2age => \%da_ages, + jsprefix => 'dat_', elemidprefix => "'c'+" &> -<& tabsort, table => 'ts_table', rowclass => 'datarow', cols => [ +<&| tabsort, table => 'ts_table', rowclass => 'datarow', cols => [ {}, {}, { DoReverse => 1, Numeric => 1, - SortKey => "da_ages[rowid]" }] + SortKey => "dat_ages[rowid]" }] &> - + ts_sortkeys= <% to_json_protecttags(\%ts_sortkeys) %>; +

+% print $m->content(); Time since this page loaded: (not known; times above not updating) -

- -<& "lookup:formhidden", ours => sub { 0; } &> -
+ <%method dataages> <%args> $id2age $elemidprefix => '' + $jsprefix => 'da_' <&| script &> - da_ages= <% to_json_protecttags($id2age) %>; - function da_Refresh() { + function <% $jsprefix %>Refresh() { var now= Date.now(); debug('updating now='+now); - for (var ageid in da_ages) { - var oldage= da_ages[ageid]; + for (var ageid in <% $jsprefix %>ages) { + var oldage= <% $jsprefix %>ages[ageid]; var el= document.getElementById(<% $elemidprefix %>ageid); var age= oldage + (now - da_pageload) / 1000; var newhtml= <% meta_prettyprint_age('age','Math.floor','+') %>; -% if ($ARGS{debug}) { - if (elemid == 'cid_loaded') - debug('element ageid='+ageid+' oldage='+oldage - +' age='+age+': '+newhtml); -% } el.innerHTML= newhtml; } } + <% $jsprefix %>ages= <% to_json_protecttags($id2age) %>; + window.setInterval(<% $jsprefix %>Refresh, 10000); + register_onload(<% $jsprefix %>Refresh); -<& SELF:dataages, id2age => \%da_ages, elemidprefix => "'c'+" &> - -<&| script &> - ts_sortkeys= <% to_json_protecttags(\%ts_sortkeys) %>; - - function all_onload() { - ts_onload__ts_table(); - da_Refresh(); - } - window.onload= all_onload; - window.setInterval(da_Refresh, 10000); - +
+ +<& "lookup:formhidden", ours => sub { 0; } &> +
<%init> use POSIX;