{
# $Id: search.egw,v 1.4 1995/10/31 10:03:53 adam Exp $
proc ok-response {} {
global sessionWait
set sessionWait 1
}
proc fail-response {} {
global sessionWait
set sessionWait -1
}
proc display-rec {from to} {
while {$from < $to} {
htmlr {} $from {
}
if {![catch {
set title [lindex [z39.1 getMarc $from field 245 * a] 0]
set year [lindex [z39.1 getMarc $from field 260 * c] 0]
} ] } {
htmlr $title { } $year {
}
}
incr from
}
}
proc build-query {} {
global targets
global t
set op {}
set q {}
for {set i 1} {$i < 4} {incr i} {
set term [form entry$i]
if {$term != ""} {
set field [form menu$i]
foreach x [lindex $targets($t) 2] {
if {[lindex $x 0] == $field} {
set attr [lindex $x 1]
}
}
switch $op {
And
{ set q "@and $q ${attr} ${term}" }
Or
{ set q "@or $q ${attr} ${term}" }
{And not}
{ set q "@not $q ${attr} ${term}" }
{}
{ set q "${attr} ${term}" }
}
set op [form logic$i]
}
}
return $q
}
global sessionWait
z39 callback ok-response
z39 failback fail-response
set sessionWait 0
ir-set z39.1 z39
z39.1 databaseNames [form base]
htmlr {