19cb131f8a8ba73c3fe975ebc978ee731735db58
[jalview.git] / utils / patchGt.pl
1 #!/bin/perl
2
3 use strict;
4 use Env qw($GTID);
5
6 defined($GTID) or $GTID="UA-9060947-1";
7 my $SCRIPT = <<FOO;
8 <body>
9 <script type="text/javascript">
10     var gaJsHost = (("https:" == document.location.protocol) ?
11         "https://ssl." : "http://www.");
12     document.write(unescape("%3Cscript src=\'" + gaJsHost +
13         "google-analytics.com/ga.js\' type=\'text/javascript\'%3E%3C/script%3E"));
14 </script>
15 <script type="text/javascript">
16 try{
17     var pageTracker = _gat._getTracker("'$GTID'");
18     pageTracker._trackPageview();
19 } catch(err) {}
20 </script>
21 FOO
22                 
23 while (scalar @ARGV)
24 {
25     my $f=shift @ARGV;
26     if (-f $f) {
27         if (system("grep","-v","-q",'"'.$GTID.'"',$f)) {
28             if (open OF,">$f.".$GTID) {
29                 if (open IF,"$f") {
30                 while (<IF>) {
31                     if ($_=~m!<body>!) {
32                         $_=~s!<body>!$SCRIPT!;
33                     } else {
34 #                       $_=~s!href="([~"]+)"!href="$1" onclick="
35                     }
36                     print OF $_;
37                 }
38                 close(IF);
39                 close(OF);
40                 rename($f,$f.".old.".$GTID) or die("Couldn't rename $f to $f".".old.".$GTID,$@);
41                 rename($f.".$GTID",$f) or die("Couldn't rename $f.".$GTID." to $f",$@);
42                 unlink($f.".old.".$GTID) or die("Couldn't delete ".$f.".old.".$GTID,$@);
43                 } else {
44                     warn("Can't open $f for reading.",$@);
45                 }
46             } else {
47                 warn("Couldn't open new edited file $f.$GTID",$@);
48             }
49         }
50     }
51 }
52