#!/usr/local/bin/perl

use strict;
use LWP;
use URI::Escape;

my $source;

#
# download_page(url, args)
# returns source code
#
sub download_page
{
  my $url = $_[0];
  $url .= "?$_[1]" if ($_[1]);

  my $ua = new LWP::UserAgent;  
  $ua->agent("Mozilla/4.0 (compatible; MSIE 5.01; Windows 98; DigExt)");

  print "[debug] $url\n";

  my $req = new HTTP::Request GET => "$url";

  my $res = $ua->request($req);
  my $retval = $res->content;

  return $retval if ($res->is_success);

  die "Unable to connect to: $url";
}


#downlaod the html page from awstats:
$source = download_page( "http://www.windal.net/cgi-bin/awstats.pl?config=www.windal.net&output=alldomains", "" );

# replace lines that contain /icon/flags/XX.png by XX (the
# 2-letter country code.):
$source =~ s/.*icon\/flags\/([a-z][a-z])\.png.*/$1/mg ;
# Cleanup unwanted lines, lines more than 2-char long and lines
# that do not start by a letter:
$source =~ s/.{2}.+//mg ;
$source =~ s/[^a-z]//g;
# Convert everything to upper case:
$source =~ s/([a-z])/\u$1/g ;

print "Content-type: text/html\n\n";
print "<img src=\"http://www.world66.com/myworld66/visitedCountries/worldmap?visited=$source\"><br/>";
print "<a href=\"http://www.world66.com/myworld66\">create your own visited ";
print "country map</a>";
print " or check our ";
print "<a href=\"http://www.world66.com/europe/netherlands/amsterdam\">Amsterdam travel guide</a>";