browser: new browsers, optional
[sheet.git] / browser.plp
index ea23d0afae18702ac0d47b3e0d9c63e9b95f9feb..a4af5348dda1d039fae696f7b1d9b18bc79b3873 100644 (file)
@@ -43,13 +43,14 @@ my %CSTATUS = (
        rec   => 'l6', # recommendation
        ietf  => 'l6', # standard
 );
-my @browsers = qw(trident gecko webkit_saf webkit_chr presto);
 my %versions;
 if (my ($somerow) = values %{ $caniuse->{data} }) {
        while (my ($browser, $row) = each %{ $somerow->{stats} }) {
                $versions{$browser} = [ sort { paddedver($a) cmp paddedver($b) } keys %$row ];
        }
 }
+my @browsers = grep { $versions{$_} }
+       qw(trident gecko webkit_saf ios_saf webkit_chr android presto op_mob op_mini);
 
 my $canihas = do 'browser-usage.inc.pl' || do {
        printf "<p>Browser usage data not found: <em>%s</em>.</p>\n", $_
@@ -146,7 +147,15 @@ for my $id (sort {
                my $cell = $_ ? lc $_->[0] : '-';
                print '<th>', $cell;
        }
-       print '<td>', $row->{title};
+       print '<td>', map {
+               sprintf('<a href="%s" onclick="%s">%s</a>',
+                       "#$id",
+                       sprintf("try { %s; return false } catch(err) { return true }",
+                               "document.getElementById('$id').classList.toggle('target')",
+                       ),
+                       $_,
+               );
+       } $row->{title};
        print '<div class=aside>';
        s/\.?$/./, print "<p>$_</p>" for map { ref $_ ? @$_ : $_ || () }
                $row->{description}, $row->{notes};