X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;ds=inline;f=www%2Fsearch.egw;h=eabe4b9344aa2b75185065f9c40d5636e6348149;hb=3871eda3b3a1518d4d18c1ffc0ed0375cb88bdf5;hp=c72263edcde47c9b3b71ba8cb1aa663315b54ad0;hpb=09f416a26c1c7e35ead317106f985774ec0c97bd;p=egate.git
diff --git a/www/search.egw b/www/search.egw
index c72263e..eabe4b9 100644
--- a/www/search.egw
+++ b/www/search.egw
@@ -1,8 +1,8 @@
{
-# $Id: search.egw,v 1.19 1995/12/21 15:49:52 adam Exp $
+# $Id: search.egw,v 1.32 1996/02/12 13:39:40 adam Exp $
-proc perform-scan {} {
+proc start-scan {scanNo cache dir initSet} {
global sessionId
global sessionParms
global sessionWait
@@ -11,60 +11,145 @@ proc perform-scan {} {
global targets
global nextSetNo
global env
+ global useIcons
+ global debug
- set scanNo 1000
-
- set termPlusAttr [build-scan $hist($setNo,host) 3]
+ set host $hist($setNo,host)
- if {"$termPlusAttr" == ""} {
- html "
WWW/Z39.50 Gateway Scan\n\n"
- displayError "Empty query" \
- "You must specify at least one search word"
- html "\n"
- wabort
- }
- set hist($setNo,scanAttr) [lindex $termPlusAttr 1]
- set hist($setNo,$scanNo,scanTerm) [lindex $termPlusAttr 0]
-
- set hist($setNo,form,menu1) [wform menu1]
- set hist($setNo,form,menu2) ""
- set hist($setNo,form,menu3) ""
+ html " WWW/Z39.50 Gateway Scan " [splitHostSpec $host]
+ html " \n"
+ html "\n"
- set hist($setNo,form,entry1) [wform entry1]
- set hist($setNo,form,entry2) ""
- set hist($setNo,form,entry3) ""
+ set useIcons 1
+ button-europagate
- set hist($setNo,form,logic1) ""
- set hist($setNo,form,logic2) ""
+ if {$dir == "b"} {
+ set lines 20
+ set pos 20
+ } elseif {$dir == "f"} {
+ set lines 20
+ set pos 1
+ } else {
+ set lines 20
+ set pos 10
+ }
+ if {$hist($setNo,$scanNo,scanTerm) != ""} {
+ if {[z39scan $setNo $scanNo 0 $lines $pos $cache] != "1"} {
+ button-new-query 0 $setNo
+ egw_log debug "z39_scan failed"
+ return
+ }
+ html {}
+ if {$useIcons} {
+ html {}
+ } else {
+ html {Previous Terms | }
+ }
- incr nextSetNo
+ html {}
+ if {$useIcons} {
+ html {}
+ } else {
+ html {Next Terms | }
+ }
+ html {}
+ }
+ button-new-query 0 $setNo
- set host $hist($setNo,host)
set databases [lindex $targets($host) 1]
- set b [wform base]
- if {[wform baseall] != ""} {
- set hist($setNo,database) $databases
- } elseif {$b == ""} {
- set hist($setNo,database) $databases
+ if {$initSet == ""} {
+ set databaseDefault [lindex $databases 0]
+ set oSetNo 0
} else {
- set hist($setNo,database) $b
+ set oSetNo $initSet
+ set databaseDefault $hist($oSetNo,database)
}
- set hist($setNo,maxPresent) [wform hits]
- if {$hist($setNo,maxPresent) == ""} {
- set hist($setNo,maxPresent) 30
+
+ html {
}
- if {[z39scan $setNo $scanNo 0 20 10] != "1"} {
+ set useIcons 0
+ if {$hist($setNo,$scanNo,scanTerm) == ""} {
+ button-europagate
+ button-new-query 0 $setNo
return
}
+
+ html "\n"
display-scan $setNo $scanNo 0
+ html "
\n"
+
+ button-europagate
+
+ html {}
+ if {$useIcons} {
+ html {}
+ } else {
+ html {Previous Terms | }
+ }
+
+ html {}
+ if {$useIcons} {
+ html {}
+ } else {
+ html {Next Terms | }
+ }
+ html {}
+ button-new-query 0 $setNo
+ if {!$debug} return
html "
\n"
html "Debug information
\n"
html "sessionId: $sessionId
\n"
@@ -72,14 +157,12 @@ proc perform-scan {} {
foreach e {SERVER_NAME PATH_INFO SCRIPT_NAME} {
html $e {: } $env($e) {
} \n
}
- html "form: " [wform] "
\n"
+ html "form: " [egw_form] "
\n"
html "target: " $host "
\n"
html "databases: " $hist($setNo,database) "
\n"
- html "selected: " [wform base] "
\n"
+ html "selected: " [egw_form base] "
\n"
html "setNo: " $setNo "
\n"
- html "nextSetNo: " $nextSetNo "
\n"
-
- html "\n"
+ html "nextSetNo: " $nextSetNo "
\n"
}
proc buttons {setNo setMax startPos after} {
@@ -88,67 +171,36 @@ proc buttons {setNo setMax startPos after} {
global env
global hist
- if {!$useIcons && $after && $setMax < [z39.$setNo resultCount]} {
- html "\n"
- html "
\n"
- html {}
- html "\n"
- }
-
html "\n"
- if {$useIcons} {
- html {}
- }
- if {$setMax < [z39.$setNo resultCount]} {
+ button-europagate
+ if {$setMax > 0 && $setMax < [z39.$setNo resultCount]} {
html {}
+ html {">}
} else {
- html {">Next records} " | \n"
+ html {">Next Records} " | \n"
}
}
- if {$startPos != "" && $startPos != "1"} {
+ if {$setMax > 0 && $startPos != "" && $startPos != "1"} {
html {}
+ html {">}
} else {
- html {">Previous records} " | \n"
+ html {">Previous Records} " | \n"
}
}
- html {}
- } else {
- html {">New query} " | \n"
- }
+ button-new-query 1 $setNo
+ button-new-target 1
+ button-view-history 0
- html {}
- } else {
- html {">New target}
- }
html "
\n"
- if {!$useIcons && !$after && $startPos != "" && $startPos != "1"} {
- html "
\n"
- html {}
- html "\n"
- }
-
}
if {[info commands saveState] == ""} {
@@ -160,74 +212,147 @@ proc buttons {setNo setMax startPos after} {
global hist
set setNo [lindex $sessionParms 0]
- if {[wform menu1] != ""} {
- if {[wform submit] == "Scan"} {
- perform-scan
- wabort
- }
- set query [build-query $hist($setNo,host) 3]
- if {"x$query" == "x"} {
- html "
WWW/Z39.50 Gateway Search\n\n"
- displayError "Empty query" \
- "You must specify at least one search word"
- html "\n"
- wabort
- }
- set hist($setNo,query) $query
+ set startPos [lindex $sessionParms 1]
+ set endPos [lindex $sessionParms 2]
+
+ if {[egw_form] != ""} {
+ set hist($nextSetNo,idAuthentication) $hist($setNo,idAuthentication)
+ set hist($nextSetNo,host) $hist($setNo,host)
- set hist($setNo,form,menu1) [wform menu1]
- set hist($setNo,form,menu2) [wform menu2]
- set hist($setNo,form,menu3) [wform menu3]
+ if {$nextSetNo == $setNo} {
+ set setNo $nextSetNo
+ incr nextSetNo
+ } else {
+ catch {unset hist($setNo,hits)}
+ }
+ set hist($setNo,scan) 0
- set hist($setNo,form,entry1) [wform entry1]
- set hist($setNo,form,entry2) [wform entry2]
- set hist($setNo,form,entry3) [wform entry3]
+ set hist($setNo,form,menu1) [egw_form menu1]
+ set hist($setNo,form,menu2) [egw_form menu2]
+ set hist($setNo,form,menu3) [egw_form menu3]
- set hist($setNo,form,logic1) [wform logic1]
- set hist($setNo,form,logic2) [wform logic2]
+ set hist($setNo,form,entry1) [egw_form entry1]
+ set hist($setNo,form,entry2) [egw_form entry2]
+ set hist($setNo,form,entry3) [egw_form entry3]
- incr nextSetNo
-
+ set hist($setNo,form,logic1) [egw_form logic1]
+ set hist($setNo,form,logic2) [egw_form logic2]
+ set hist($setNo,form,logic3) {}
+
set host $hist($setNo,host)
set databases [lindex $targets($host) 1]
- set b [wform base]
- if {[wform baseall] != ""} {
+ set b [egw_form base]
+ if {[egw_form baseall] != ""} {
set hist($setNo,database) $databases
} elseif {$b == ""} {
set hist($setNo,database) $databases
} else {
set hist($setNo,database) $b
}
- set hist($setNo,maxPresent) [wform hits]
+ set hist($setNo,maxPresent) [egw_form hits]
if {$hist($setNo,maxPresent) == ""} {
set hist($setNo,maxPresent) 30
}
+ set i [lindex $sessionParms 1]
+ if {$i == ""} {
+ for {set j 1} {$j <= 3} {incr j} {
+ if {[egw_form scan$j] != ""} {
+ set i $j
+ break
+ }
+ }
+ }
+ if {$i != ""} {
+ set scanNo 1000
+ set hist($setNo,scan) $i
+ set termPlusAttr [build-scan $hist($setNo,host) $i]
+ set hist($setNo,$scanNo,scanTerm) [lindex $termPlusAttr 0]
+ set hist($setNo,scanAttr) [lindex $termPlusAttr 1]
+ start-scan $scanNo 0 {} $setNo
+ html "\n"
+ egw_abort
+ return
+ }
+ set query [build-query $hist($setNo,host) 3]
+ if {"x$query" == "x"} {
+ html " WWW/Z39.50 Gateway Search\n\n"
+ displayError "Empty query" \
+ "You must specify at least one search word"
+ html "\n"
+ egw_abort
+ }
+ set hist($setNo,query) $query
+ } elseif {[lindex $sessionParms 1] == "hyper"} {
+ egw_log debug "hyper search"
+ set hist($nextSetNo,idAuthentication) $hist($setNo,idAuthentication)
+ set hist($nextSetNo,host) $hist($setNo,host)
+ set hist($nextSetNo,database) $hist($setNo,database)
+
+ if {$nextSetNo == $setNo} {
+ set setNo $nextSetNo
+ incr nextSetNo
+ } else {
+ catch {unset hist($setNo,hits)}
+ }
+ set hist($setNo,scan) 0
+ set hist($setNo,query) \
+ "$hist($setNo,scanAttr) \"[lindex $sessionParms 2]\""
+ egw_log debug "hyper databases: $hist($setNo,database)"
+ set hist($setNo,form,entry1) [lindex $sessionParms 2]
+ set startPos ""
+ } elseif {[lindex $sessionParms 1] == "scan"} {
+ egw_log debug "star scan"
+ set scanNo 1000
+ set hist($setNo,$scanNo,scanTerm) {}
+ start-scan $scanNo 0 {} {}
+ html "