#!/usr/local/bin/perl


use CGI;
use LWP::UserAgent;

# crea un oggetto CGI che serve a leggere i parametri della query

$cgi=new CGI;

# legge i parametri della query -  Questi parametri vengono dal form del CUBAI
# e si chiamano *proprio* cosi' 
#
$responsible=$cgi->param('AUTORE');
$banner=$cgi->param('TITOLO');
$string=$cgi->param('STRINGTOSEARCH');
$logicaloperator=$cgi->param('LOP');


# Ora l'adattatore ha i parametri chiesti dall'utente tramite il form del cubai
# Deve chiamare lo script dell'opac adattando la query alle specifiche del
# cgi dell'opac. Questa parte e' scritta e testata per Firenze
# quindi per Trieste va *riscritta*

# Innanzitutto crea un oggetto User Agent che puo' effettuare richieste web
# proprio come se fosse un browser

  $ua = new LWP::UserAgent;

# un po' di fuffa...

  $ua->agent("cubai_adaptor/1.0 " . $ua->agent);
  $ua->from("cubai\@arcetri.astro.it");
  $ua->timeout("30");

# questa e' la URL dello script Opac di arcetri. Se scrivo questa url nel browser mi funziona...
# Qui ci va la logica del programma: i parametri vanno adattati per l'opac specifico 
##########################################################################################################################################
#                                                               CAMBIARE QUI!!!!                                                         #
#                                                                                                                                        #
  $url="http://www.arcetri.astro.it/cgi-bin/submit_query.pl?Autore=$responsible&Allfields=$string&Titolo=$banner&relop1=AND&format=Link";
#                                                                                                                                        #
#                                                                                                                                        #
##########################################################################################################################################
# Crea un oggetto HTTP::Request da passare al metodo request dello user agent: corrisponde a fare un click su un link del browser

  $req = new HTTP::Request GET => "$url";
  $req->header(MIME_Version => '1.0');
  $req->header(Accept => "text/html, text/plain, image/*");

# il metodo UserAgent->request restituisce in uscita un oggetto HTTP::Result, cioe' tutto quello che il server ha rimandato
# indietro a seguito della richiesta

  $res = $ua->request($req);

   if ($res->is_success) {
	    $content=$res->content;
# Stampa lo header http e tutto il contenuto
# Tutto questa roba va su standard output e di fatto ritorna al browser che l'utente sta usando

	    print $cgi->header,$content;
	
	 }