{ # $Id: query.egw,v 1.40 1996/05/24 11:16:01 adam Exp $ if {[info commands saveState] == ""} { source z39util.tcl if {![info exists debug]} { session-lost egw_abort } } proc fail-response {} { global sessionWait set sessionWait -1 } proc ok-response {} { global sessionWait set sessionWait 1 } global setNo global nextSetNo global hist html { WWW/Z39.50 Gateway Query Form} set initSet [lindex $sessionParms 0] set host [lindex $sessionParms 1] set scanLine [lindex $sessionParms 2] set scanTerm [lrange $sessionParms 3 end] if {[catch {set setNo $nextSetNo}]} { set nextSetNo 1 set setNo 1 } if {[catch {set oldHost [z390 connect]}]} { set oldHost "" } set hist($setNo,0,host) $host set hist($setNo,0,idAuthentication) [lindex $targets($host) 3] mkAssoc z390 $host z390 callback ok-response z390 failback fail-response set thisHost [splitHostSpec $host] if {[string compare $thisHost $oldHost]} { catch {z390 disconnect} set sessionWait 0 if {[catch {z390 connect $thisHost}]} { displayError "Cannot connect to target ${thisHost}" {} html "\n" z390 disconnect egw_abort } elseif {$sessionWait == 0} { if {[catch {egw_wait sessionWait 35}]} { displayError "Cannot connect to target ${thisHost}" {} html "\n" z390 disconnect egw_abort } if {$sessionWait != 1} { displayError "Cannot connect to target ${thisHost}" {} html "\n" z390 disconnect egw_abort } } set sessionWait 0 z390 idAuthentication $hist($setNo,0,idAuthentication) if {[catch {z390 init}]} { displayError "Cannot initialize target ${thisHost}" {} html "\n" egw_abort } if {$sessionWait == 0 && [catch {egw_wait sessionWait 60}]} { displayError "Cannot initialize target ${thisHost}" {} html "\n" egw_abort } if {$sessionWait != "1"} { displayError "Cannot initialize target ${thisHost}" {} html "\n" egw_abort } if {![z390 initResult]} { displayError "Connection rejected by target ${thisHost}" \ [z390 userInformationField] z390 disconnect html "\n" egw_abort } } set useIcons 1 button-main button-feedback button-new-target if {[lsearch [z390 options] scan] >= 0} { button-scan-window $setNo } button-view-history html "

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


\n" html [lindex $targets($host) 4] "
\n" set databases [splitDatabaseSpec $host] if {$initSet == -1} { set databaseDefault [lindex $databases 0] set oSetNo 0 } else { set oSetNo $initSet set databaseDefault $hist($oSetNo,0,database) } html {
} \n set nodb [llength $databases] if {$nodb > 1} { if {$nodb > 2} { 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 \n } else { html {" checked> } $d \n } } html "
\n" if {$nodb > 2} { html { All
} \n } } html "Fill-in this search form:
\n" set fields [lindex $targets($host) 2] for {set no 1} {$no < 4} {incr no} { html {\n" html { 0} { html { value="} $template {"} } html { size=35> } if {0 && [lsearch [z390 options] scan] >= 0} { html {} } if {$no < 3} { html {\n" } html "
\n" } }
{ html {Number of records to display in the result set list: } html {} html "
\n" html "

\n" set useIcons 0 button-main button-feedback button-new-target if {[lsearch [z390 options] scan] >= 0} { button-scan-window $setNo } button-view-history } { catch maintenance global debug if {!$debug} return html "


\n" html "

Debug information

\n" html "sessionId: $sessionId
\n" html "sessionParms: $sessionParms
\n" foreach e {SERVER_NAME PATH_INFO SCRIPT_NAME} { html $e {: } $env($e) {
} \n } html "form: " [egw_form] "
\n" html "target: " $host "
\n" html "databases: " $databases "
\n" html "setNo: " $setNo "
\n" html "nextSetNo: " $nextSetNo "
\n" html "initSet: " $initSet "
\n" html "scanLine: " $scanLine "
\n" html "scanTerm: " $scanTerm "
\n" }