X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=www%2Fz39util.tcl;h=3eb4dff5e265a1c5e0aead9f743213ea974ae4e0;hb=73041203f9c387b4596185203b1daebe2f4f30e9;hp=e2dca2fbc28adfd14b25370dc8bdc61d77f60e58;hpb=cc5af6a5323f9576c208519dbf4351b4f818e166;p=egate.git
diff --git a/www/z39util.tcl b/www/z39util.tcl
index e2dca2f..3eb4dff 100644
--- a/www/z39util.tcl
+++ b/www/z39util.tcl
@@ -1,5 +1,5 @@
#
-# $Id: z39util.tcl,v 1.19 1996/01/09 16:16:49 adam Exp $
+# $Id: z39util.tcl,v 1.23 1996/01/24 08:27:23 adam Exp $
#
proc saveState {} {
uplevel #0 {
@@ -93,8 +93,17 @@ proc display-brief {zset no tno} {
}
if {![catch {
set author [$zset getMarc $no field 100 * a]
- set title [lindex [$zset getMarc $no field 245 * a] 0]
- set year [lindex [$zset getMarc $no field 260 * c] 0]
+ set corp [$zset getMarc $no field 110 * a]
+ set meet [$zset getMarc $no field 111 * a]
+ set title [$zset getMarc $no field 245 * a]
+ if {[llength $author] == 0} {
+ set cover [$zset getMarc $no field 245 * {[bc]}]
+ } else {
+ set cover [$zset getMarc $no field 245 * b]
+ }
+ set location [$zset getMarc $no field 260 * a]
+ set publisher [$zset getMarc $no field 260 * b]
+ set year [$zset getMarc $no field 260 * c]
} ] } {
set p 0
foreach a $author {
@@ -104,17 +113,49 @@ proc display-brief {zset no tno} {
html $a
set p 1
}
+ foreach a $corp {
+ if {$p} {
+ html ", "
+ }
+ html $a
+ set p 1
+ }
+ foreach a $meet {
+ if {$p} {
+ html ", "
+ }
+ html $a
+ set p 1
+ }
if {$p} {
html ": "
}
- html {}
- if {[string length $title] == 0} {
- html {No title}
- } else {
- html $title
+ html {}
+ set nope 1
+ foreach v $title {
+ html $v
+ set nope 0
+ }
+ if {$nope} {
+ html {No title}
}
- html {} " ${year} "
+ html { }
+ foreach v $cover {
+ html $v
+ }
+ html {
}
+ foreach v $location {
+ html " $v"
+ }
+ foreach v $publisher {
+ html " $v"
+ }
+ foreach v $year {
+ html " $v"
+ }
+ html { -- }
+ html "view full"
}
html "
\n"
}
@@ -167,7 +208,7 @@ proc display-raw {zset no tno} {
}
html $data
}
- htmlr {
}
+ html "
\n"
}
}
@@ -286,8 +327,17 @@ proc display-full {zset no tno} {
}
set n [dl-marc-field $zset $no 710 a "Corporate Name" {} ", "]
if {$n == 0} {
- set n [dl-marc-field $zset $no 710 a "Corporate Name" {} ", "]
+ set n [dl-marc-field $zset $no 110 a "Corporate Name" {} ", "]
}
+ set n [dl-marc-field $zset $no 711 a "Meeting Name" {} ", "]
+ if {$n > 0} {
+ dd-marc-field $zset $no 711 {[bndc]} " " ""
+ } else {
+ set n [dl-marc-field $zset $no 111 a "Meeting Name" {} ", "]
+ if {$n > 0} {
+ dd-marc-field $zset $no 111 {[bndc]} " " " "
+ }
+ }
set n [dl-marc-field $zset $no 245 {a} "Title" {} " "]
if {$n > 0} {
dd-marc-field $zset $no 245 b "" ""
@@ -382,9 +432,10 @@ proc display-rec {from to dfunc tno} {
proc build-scan {t i} {
global targets
- set term [wform entry$i]
+ set term [egw_form entry$i]
if {$term != ""} {
- set field [wform menu$i]
+ set field [join [egw_form menu$i]]
+ set attr {Title}
foreach x [lindex $targets($t) 2] {
if {[lindex $x 0] == $field} {
set attr [lindex $x 1]
@@ -401,9 +452,9 @@ proc build-query {t ilines} {
set op {}
set q {}
for {set i 1} {$i <= $ilines} {incr i} {
- set term [wform entry$i]
+ set term [join [egw_form entry$i]]
if {[string length $term] > 0} {
- set field [wform menu$i]
+ set field [join [egw_form menu$i]]
foreach x [lindex $targets($t) 2] {
if {[lindex $x 0] == $field} {
set attr [lindex $x 1]
@@ -419,7 +470,7 @@ proc build-query {t ilines} {
{}
{ set q "${attr} ${term}" }
}
- set op [wform logic$i]
+ set op [egw_form logic$i]
}
}
return $q
@@ -462,7 +513,7 @@ proc z39scan {setNo scanNo tno scanLines scanPos cache} {
displayError "Cannot connect to target" $host
return 0
} elseif {$sessionWait == 0} {
- if {[catch {zwait sessionWait 300}]} {
+ if {[catch {egw_wait sessionWait 300}]} {
$zz disconnect
displayError "Cannot connect to target" $host
return 0
@@ -479,7 +530,7 @@ proc z39scan {setNo scanNo tno scanLines scanPos cache} {
$zz disconnect
return 0
}
- if {[catch {zwait sessionWait 60}]} {
+ if {[catch {egw_wait sessionWait 60}]} {
displayError "Cannot initialize target" $host
$zz disconnect
return 0
@@ -512,8 +563,8 @@ proc z39scan {setNo scanNo tno scanLines scanPos cache} {
set sessionWait 0
$zs scan "${scanAttr} ${scanTerm}"
- if {[catch {zwait sessionWait 600}]} {
- wlog debug "timeout/cancel in scan"
+ if {[catch {egw_wait sessionWait 60}]} {
+ egw_log debug "timeout/cancel in scan"
displayError "Timeout in scan" {}
html "