X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?a=blobdiff_plain;f=yarrg%2Fweb%2Ftabsort;h=e114319a0254f4780bfcaa6071093d39f016f23f;hb=8389c1d520e0b70f79fc2ce72b4840b0f9e96700;hp=00f361406c39241c0b5767b8b5efa5aedf51faca;hpb=b19f26b080fdd2deef9ce461aa42f4e8f8d9bf2d;p=ypp-sc-tools.db-test.git diff --git a/yarrg/web/tabsort b/yarrg/web/tabsort index 00f3614..e114319 100644 --- a/yarrg/web/tabsort +++ b/yarrg/web/tabsort @@ -40,6 +40,7 @@ $table => 'ts_table' $sortkeys => 'ts_sortkeys' $throw => undef $tbrow => undef +$rowclass => undef $cols @@ -53,6 +54,8 @@ $cols <&| script &> +% print $m->content(); + % my $sortfn= "ts_sort__$table"; function <% $sortfn %>(compar) { debug('sorting compar='+compar); @@ -90,6 +93,14 @@ function <% $sortfn %>(compar) { debug('final row '+rowix+' [[ '+row+' ]]'); } newrows.sort(compar); +% if (defined $rowclass) { + for (var rowix=0; rowix < newrows.length; rowix++) { + var row= newrows[rowix]; + var classname= '<% $rowclass %>'+(rowix % 2); + debug('fix row '+rowix+' class '+classname); + row.className= classname; + } +% } newrows= newrows.concat(finalrows); for (var rowix=0; rowix < newrows.length; rowix++) { var row= newrows[rowix]; @@ -132,7 +143,7 @@ function <% $comparefn %>(a,b) { % } } -% foreach my $reverse (qw(0 1)) { +% foreach my $reverse (qw(1 0)) { % my $tcomparefn= "ts_compar${cix}_cmp${reverse}__$table"; % if ($reverse) { % next unless $col->{DoReverse}; @@ -159,4 +170,6 @@ function ts_onload__<% $table %>() { thlist.item(cix).innerHTML += ah; } } + +register_onload(ts_onload__<% $table %>);