#!/usr/bin/perl -w
# Filename : getdb.pl

use strict;
use WWW::Mechanize;
use LWP::Simple;

my $str1;
my $str2;
my $str3;
my $str4;
my $textpos;
my $ICAO = "0";
my $RegNo;
my $ACM;
my $AddInfo;
my $condition;
print "Downloading New Database\n";
my $filename = "/home/fred/perladsb/adsb.db";
my $content = get('http://www.live-military-mode-s.eu/overviewUS.php') or die 'Unable to get page';
print "Download Complete\n";
print "Building New Database\n";
open(my $fh, '>', $filename) or die "Could not open file '$filename' $!";

do {


# Get ICAO
$textpos = index($content, "<TR><TD align=left width="); 
$str1 =  substr $content, $textpos + 30;
$ICAO =  substr $str1, 0, 6;
for ($ICAO) {
        s/^\s+//;
        s/\s+$//;
}

# Get Tail Number
$textpos = index($str1, "7%");
$str2 = substr $str1, $textpos + 4;
$textpos = index($str2, "<");
$RegNo = substr $str2, 0, $textpos;
for ($RegNo) {
        s/^\s+//;
        s/\s+$//;
}

# Get Aircraft Model
$textpos = index($str2, "7%");
$str3 = substr $str2, $textpos + 4;
$textpos = index($str3, "<");
$ACM = substr $str3, 0, $textpos;
for ($ACM) {
        s/^\s+//;
        s/\s+$//;
}

# Get Additional Info
$textpos = index($str3, "10%");
$str4 = substr $str3, $textpos + 5;
$textpos = index($str4, "<");
$AddInfo = substr $str4, 0, $textpos;
for ($AddInfo) {
        s/^\s+//;
        s/\s+$//;
}

print $fh "$ICAO,$RegNo,$ACM,$AddInfo\n";

$condition = substr $ICAO,0, 1;
#print ".";

$content = $str4;

} while ( $condition ne  "F");
close $fh;
print "Database Construction Complete.\n"; 

#print "Result: $ICAO,$RegNo,$ACM,$AddInfo\n";

