X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?a=blobdiff_plain;f=yarrg%2Fweb%2Fquery_age;h=fc7999341fee3451976280d98faa00d2770aa1b1;hb=f6d7a4d627f3ecc0624649bb895dbf8e59afcf47;hp=77d750c8c95ec2c0386b79f785111df215851e0b;hpb=98610392fde2add293bee6199f2de1d6f88559d8;p=ypp-sc-tools.db-live.git diff --git a/yarrg/web/query_age b/yarrg/web/query_age index 77d750c..fc79993 100644 --- a/yarrg/web/query_age +++ b/yarrg/web/query_age @@ -40,24 +40,6 @@ $dbh <%once> -my $meta_prettyprint_age= sub { - my ($age,$floor,$plus) = @_; - return <('$age','floor','.').' - }; -' or die "$@"; @@ -78,27 +60,41 @@ $sth->execute();

Market data age

- +
% my %da_ages; -% $da_ages{'daid_loaded'}= 0; +% my %ts_sortkeys; +% $da_ages{'id_loaded'}= 0; +% my $rowix= 0; % while ($row=$sth->fetchrow_hashref) { -% my $elid= "daid_$row->{'islandid'}"; +% my $rowid= "id_$row->{'islandid'}"; +% my $cellid= "c$rowid"; % my $age= $now - $row->{'timestamp'}; -% $da_ages{$elid}= $age; - +% $ts_sortkeys{'0'}{$rowid}= $row->{'archipelago'}; +% $ts_sortkeys{'1'}{$rowid}= $row->{'islandname'}; +% $da_ages{$rowid}= $age; + class="<% 'datarow'.($rowix & 1) %>" + > +% $rowix++; % }
Archipelago Island Age
<% $row->{'archipelago'} |h - %> <% $row->{'islandname'} |h - %> <% $prettyprint_age->($age) %>
<% $row->{'archipelago'} |h + %> <% $row->{'islandname'} |h + %> <% prettyprint_age($age) %>
+<& tabsort, table => 'ts_table', rowclass => 'datarow', cols => [ + {}, {}, + { DoReverse => 1, + Numeric => 1, + SortKey => "da_ages[rowid]" }] + &> +

Time since this page loaded: -(not known; times above not updating) +(not known; times above not updating)

@@ -106,25 +102,32 @@ Time since this page loaded:
<&| 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 elid in da_ages) { - var el= document.getElementById(elid); - var oldage= da_ages[elid]; + 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','+') %> + var newhtml= <% meta_prettyprint_age('age','Math.floor','+') %>; % if ($ARGS{debug}) { - if (elid == 'daid_loaded') - debug('element elid='+elid+' oldage='+oldage+' age='+age+': '+newhtml); + if (cellid == 'cid_loaded') + debug('element rowid='+rowid+' cellid='+cellid + +' oldage='+oldage+' age='+age+': '+newhtml); % } el.innerHTML= newhtml; } } - window.onload= da_Refresh; + function all_onload() { + ts_onload__ts_table(); + da_Refresh(); + } + window.onload= all_onload; window.setInterval(da_Refresh, 10000);