#
-# $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 {
}
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 {
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 {<a href="http:} $env(SCRIPT_NAME) /
- html $sessionId {/showfull.egw/} $setNo + $tno + $no + full {">}
- if {[string length $title] == 0} {
- html {No title}
- } else {
- html $title
+ html {<em>}
+ set nope 1
+ foreach v $title {
+ html $v
+ set nope 0
+ }
+ if {$nope} {
+ html {No title}
}
- html {</a>} " <i> ${year} </i>"
+ html {</em> }
+ foreach v $cover {
+ html $v
+ }
+ html {<br>}
+ foreach v $location {
+ html " $v"
+ }
+ foreach v $publisher {
+ html " $v"
+ }
+ foreach v $year {
+ html " $v"
+ }
+ html { -- <a href="http:} $env(SCRIPT_NAME) /
+ html $sessionId {/showfull.egw/} $setNo + $tno + $no + full {">}
+ html "<em>view full</em></a>"
}
html "<br>\n"
}
}
html $data
}
- htmlr {<br>}
+ html "<br>\n"
}
}
}
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 "<em>" "</em>"
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]
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]
{}
{ set q "${attr} ${term}" }
}
- set op [wform logic$i]
+ set op [egw_form logic$i]
}
}
return $q
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
$zz disconnect
return 0
}
- if {[catch {zwait sessionWait 60}]} {
+ if {[catch {egw_wait sessionWait 60}]} {
displayError "Cannot initialize target" $host
$zz disconnect
return 0
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 "</body></html>\n"
$zz disconnect
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
$zz disconnect
return 0
}
- if {[catch {zwait sessionWait 60}]} {
+ if {[catch {egw_wait sessionWait 60}]} {
displayError "Cannot initialize target" $host
$zz disconnect
return 0
$zz.$setNo mediumSetElementSetNames $elements
$zz.$setNo recordElements $elements
- wlog debug "database=$database"
+ egw_log debug "database=$database"
eval $zz.$setNo databaseNames $database
$zz.$setNo preferredRecordSyntax USMARC
set sessionWait 0
$zz.$setNo search $query
- if {[catch {zwait sessionWait 600}]} {
- wlog debug "timeout/cancel in search"
+ if {[catch {egw_wait sessionWait 600}]} {
+ egw_log debug "timeout/cancel in search"
displayError "Timeout in search" {}
html "</body></html>\n"
$zz disconnect
global zstatus
global zleft
- wlog debug "init-m-response"
+ egw_log debug "init-m-response"
set zstatus($i) 1
incr zleft -1
global zstatus
global zleft
- wlog debug "connect-m-response"
+ egw_log debug "connect-m-response"
z39$i callback [list init-m-response $i]
if {[catch {z39$i init}]} {
set zstatus($i) -1
global zstatus
global zleft
- wlog debug "fail-m-response"
+ egw_log debug "fail-m-response"
set zstatus($i) -1
incr zleft -1
}
}
}
while {$zleft > 0} {
- wlog debug "Waiting for init response"
- if {[catch {zwait zleft 10}]} {
+ egw_log debug "Waiting for init response"
+ if {[catch {egw_wait zleft 10}]} {
break
}
}
z39$i.$setNo mediumSetPresentNumber 0
}
set zstatus($i) 1
- wlog debug "search " $hist($setNo,$i,query)
+ egw_log debug "search " $hist($setNo,$i,query)
z39$i.$setNo search $hist($setNo,$i,query)
incr zleft
} else {
}
}
while {$zleft > 0} {
- wlog debug "Waiting for search response"
- if {[catch {zwait zleft 30}]} {
+ egw_log debug "Waiting for search response"
+ if {[catch {egw_wait zleft 30}]} {
break
}
}
if {$got < $toGet} {
set sessionWait 0
$zz.$setNo present $setOffset $toGet
- if {[catch {zwait sessionWait 300}]} {
- wlog debug "timeout/cancel in present"
+ if {[catch {egw_wait sessionWait 300}]} {
+ egw_log debug "timeout/cancel in present"
$zz disconnect
break
}
display-rec $setOffset [expr $got + $setOffset - 1] $dfunc $tno
set setOffset [expr $got + $setOffset]
set toGet [expr 1 + $setMax - $setOffset]
- wflush
+ egw_flush
}
}
global useIcons
global env
global sessionId
+ global nextSetNo
html {<a href="http:} $env(SCRIPT_NAME)
- html / $sessionId {/history.egw}
+ html / $sessionId {/history.egw;}
+ catch { html "/" $nextSetNo}
if {$useIcons} {
html {"><img src="/egwgif/button-view-history.gif" alt="View History" }
html {border=0></a>}
}
}
+proc button-scan-window {more setNo} {
+ global useIcons
+ global env
+ global sessionId
+ global hist
+
+ html {<a href="http:} $env(SCRIPT_NAME)
+ html / $sessionId {/search.egw/} $setNo + {scan} {">}
+ if {$useIcons} {
+ html {<img src="/egwgif/button-scan-window.gif" }
+ html {alt="Scan" border=0></a>}
+ } else {
+ html {Scan</a>}
+ if {$more} {
+ html " | \n"
+ } else {
+ html "\n"
+ }
+ }
+}
+
proc maintenance {} {
html {<hr>This page is maintained by }
html {<a href="mailto:pwh@dtv.dk"> Peter Wad Hansen </a>.}