X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=www%2Fquery.egw;h=0c4832d4ce52cbcc0fc6457fe35542ff68176e40;hb=df7b985601de6c729147a6fd6588adba6f905480;hp=319d5f12de51a82a99009e53da0b704bc69be7fe;hpb=fb42e8909c46dfe29d2b8d8852e0ebf297eb2963;p=egate.git diff --git a/www/query.egw b/www/query.egw index 319d5f1..0c4832d 100644 --- a/www/query.egw +++ b/www/query.egw @@ -4,115 +4,209 @@ { -# $Id: query.egw,v 1.4 1995/10/30 17:35:17 adam Exp $ +# $Id: query.egw,v 1.21 1996/01/02 10:52:26 adam Exp $ + + if {[info commands saveState] == ""} { + source z39util.tcl + } + proc fail-response {} { global sessionWait set sessionWait -1 } -proc init-response {} { +proc ok-response {} { global sessionWait set sessionWait 1 } - set t $sessionParms - set databases [lindex $targets($t) 1] - set sessionWait 0 - ir z39 + global setNo + global nextSetNo + global hist + + set host [lindex $sessionParms 0] + + if {[catch {set setNo $nextSetNo}]} { + set nextSetNo 1 + set setNo 1 + } + if {[catch {set oldHost [z39 connect]}]} { + set oldHost "" + } + + set hist($setNo,host) $host + set hist($setNo,idAuthentication) [lindex $targets($host) 3] + + if {[catch {z39 failback fail-response}]} { + ir z39 + } + + html "

Search in " [lindex $targets($host) 0] "

\n" + + z39 callback ok-response z39 failback fail-response - if {[catch {z39 connect $t}]} { - htmlr "Cannot connect to target $t
" - htmlr "" - return - } - z39 callback init-response - z39 init - zwait sessionWait - if {$sessionWait == -1} { - htmlr "Cannot initialize with target $t
" - htmlr "" - return + if {$host != $oldHost} { + catch {z39 disconnect} + + set sessionWait 0 + if {[catch {z39 connect $host}]} { + displayError "Cannot connect to target ${host}" {} + html "\n" + z39 disconnect + wabort + } elseif {$sessionWait == 0} { + if {[catch {zwait sessionWait 35}]} { + displayError "Cannot connect to target ${host}" {} + html "\n" + z39 disconnect + wabort + } + if {$sessionWait != 1} { + displayError "Cannot connect to target ${host}" {} + html "\n" + z39 disconnect + wabort + } + } + set sessionWait 0 + z39 idAuthentication $hist($setNo,idAuthentication) + if {[catch {z39 init}]} { + displayError "Cannot initialize target ${host}" {} + html "\n" + wabort + } + if {[catch {zwait sessionWait 60}]} { + displayError "Cannot initialize target ${host}" {} + html "\n" + wabort + } + if {$sessionWait != "1"} { + displayError "Cannot initialize target ${host}" {} + htmlr "\n" + wabort + } + if {![z39 initResult]} { + displayError "Connection rejected by target ${host}" \ + [z39 userInformationField] + z39 disconnect + htmlr "" + wabort + } } - htmlr { -

Search in databases

-

Not Functional Yet

+ set databases [lindex $targets($host) 1] + + if {[catch {set prevHost $hist([expr $setNo - 1],host)}]} { + set databaseDefault [lindex $databases 0] + set oSetNo 0 + } else { + set oSetNo [expr $setNo - 1] + set databaseDefault $hist($oSetNo,database) } - html {
} + html {} \n set nodb [llength $databases] if {$nodb > 1} { if {$nodb > 2} { - html {The chosen target supports searching in } - htmlr {several databases.
} - htmlr {Choose the bases you want to search:
} + html "The chosen target supports searching in " + html "several databases.
\n" + html "Choose the bases you want to search:
\n" } set i 0 foreach d $databases { html { } $d + if {[lsearch $databaseDefault $d] == -1} { + html {"> } $d \n } else { - htmlr {" checked> } $d + html {" checked> } $d \n } } - htmlr {
} + html "
\n" if {$nodb > 2} { - html { All
} + html { All
} \n } + html "Input your search criteria:
\n" } - htmlr {
} - htmlr {Input your search criteria:
} - set fields [lindex $targets($t) 2] +} +{ + set fields [lindex $targets($host) 2] for {set no 1} {$no < 4} {incr no} { - htmlr {} \n + if {$oSetNo > 0} { + html {
-
- This page is maintained by - Peter Wad Hansen . - Last modified 29. september 1995.
- This and the following pages are under construction - and will continue to be so until the end of December 1995. -
+} + + + + +
+{ + html {Number of records to display in the result set list: } + html {} +} + +

+ +{ + html {Europagate} + html {New Target} +} + +


+This page is maintained by Peter Wad Hansen . +Last modified 29. september 1995.
+ This and the following pages are under construction +and will continue to be so until the end of December 1995. + +{ + html "
\n" + html "

Debug information

\n" + html "sessionId: $sessionId
\n" + html "sessionParms: $sessionParms
\n" foreach e {SERVER_NAME PATH_INFO SCRIPT_NAME} { - htmlr $e {: } $env($e) {
} + html $e {: } $env($e) {
} \n } - htmlr {form: } [form] {
} - htmlr {target: } $t {
} - htmlr {databases: } $databases {
} - htmlr {} -} \ No newline at end of file + html "form: " [wform] "
\n" + html "target: " $host "
\n" + html "databases: " $databases "
\n" + html "setNo: " $setNo "
\n" + html "nextSetNo: " $nextSetNo "
\n" +} + + +