X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?a=blobdiff_plain;f=yarrg%2Fweb%2Fquery_age;h=88bc7ea16b73fa686bb30628761a725c4bd242c3;hb=ec244cf220ba2232df707da397dd10de776dbda2;hp=28d6a5f667074203c49451d522ad55b7d9fb1254;hpb=696455ad8a70084e330f7e1f6edec973e58cd2f5;p=ypp-sc-tools.db-test.git diff --git a/yarrg/web/query_age b/yarrg/web/query_age index 28d6a5f..88bc7ea 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 "$@"; @@ -87,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"; @@ -94,14 +77,15 @@ $sth->execute(); % $ts_sortkeys{'0'}{$rowid}= $row->{'archipelago'}; % $ts_sortkeys{'1'}{$rowid}= $row->{'islandname'}; % $da_ages{$rowid}= $age; - + class="<% 'datarow'.($rowix & 1) %>" > <% $row->{'archipelago'} |h %> <% $row->{'islandname'} |h - %> <% $prettyprint_age->($age) %> + %> <% prettyprint_age($age) %> +% $rowix++; % } -<& tabsort, table => 'ts_table', cols => [ +<& tabsort, table => 'ts_table', rowclass => 'datarow', cols => [ {}, {}, { DoReverse => 1, Numeric => 1, @@ -117,34 +101,38 @@ Time since this page loaded: <& "lookup:formhidden", ours => sub { 0; } &> +<%method dataages> +<%args> + $id2age + $elemidprefix => '' + <&| script &> - ts_sortkeys= <% to_json_protecttags(\%ts_sortkeys) %>; - da_ages= <% to_json_protecttags(\%da_ages) %>; - + da_ages= <% to_json_protecttags($id2age) %>; 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); + 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','+') %>; -% if ($ARGS{debug}) { - if (cellid == 'cid_loaded') - debug('element rowid='+rowid+' cellid='+cellid - +' oldage='+oldage+' age='+age+': '+newhtml); -% } + var newhtml= <% meta_prettyprint_age('age','Math.floor','+') %>; el.innerHTML= newhtml; } } + window.setInterval(da_Refresh, 10000); + + + +<& 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); <%init>