#!/usr/bin/perl -w
#
# Transforms the book results from http://rizal.lib.admu.edu.ph
# into a form Emacs can use.
#
# [CALLNO TITLE (AUTHORS...) PUBLISHER YEAR DETAILS (SUBJECTS...)]
#
# sacha@free.net.ph

$/ = "<BR>";
$count = 0;
while ($s = <STDIN>)
{
    if ($s =~ /Found\s+\d+\s+Entrie/)
    {
#        print $count . " entries\n"
    }
    elsif ($s =~ /<font color=0000ff>\s*(.+?)\s*</mi)
    {
        $title = $1;
        $title =~ s/<br>|\n|"|\\//gi;
        $s = <STDIN>; $s =~ s/<br>|\n|"|\\//gi;
        @authors = split /\s*;\s*/, $s; 
        $s = <STDIN>; $s =~ s/<br>|\n|"|\\//gi;
        $publisher = $s;
        $date = 0;
        if ($publisher =~ /\d\d\d\d/)
        {
            while ($publisher =~ /(\d\d\d\d)/mg)
            {
                if ($1 > $date) { $date = $1; }
            }
        }
        $s = <STDIN>; $s =~ s/<br>|\n|"|\\//gi;
        $details = $s;
        $s = <STDIN>; $s =~ s/<.+?>|\n|"|\\//gi;
        @subjects = split /\s*;\s*/, $s;
        $s = <STDIN>; $s =~ s/<.+?>|<br>|\n|"|\\//gi;
        $callno = $s;

#         print "Callno: $callno\n";
#         print "Title: $title\n";
#         print "Authors: ";
#         print join " ", map { "\"$_\"" } @authors;
#         print "\nPublisher: $publisher\nDate: $date\n";
#         print "Details: $details\n";
#         print "Subjects: ";
#         print join " ", map { "\"$_\"" } @subjects;
#         print "\n";
        print "[\"$callno\" \"$title\" (";
        print join " ", map { "\"$_\"" } @authors;
        print ") \"$publisher\" $date \"$details\" (";
        print join " ", map { "\"$_\"" } @subjects;
        print ")]\n";
        $count++;
    }
    else
    {
        #print "----";
        #print $s;
    }
}


