Work on scan window.
[egate.git] / www / query.egw
index 0c4832d..cad8e7a 100644 (file)
@@ -4,7 +4,7 @@
 </head>
 <body>
 {
-# $Id: query.egw,v 1.21 1996/01/02 10:52:26 adam Exp $
+# $Id: query.egw,v 1.27 1996/01/12 10:03:17 adam Exp $
 
     if {[info commands saveState] == ""} {
         source z39util.tcl
@@ -25,6 +25,9 @@ proc ok-response {} {
     global hist
 
     set host [lindex $sessionParms 0]
+    set initSet [lindex $sessionParms 1]
+    set scanLine [lindex $sessionParms 2]
+    set scanTerm [lrange $sessionParms 3 end]
 
     if {[catch {set setNo $nextSetNo}]} {
         set nextSetNo 1
@@ -42,7 +45,6 @@ proc ok-response {} {
     }
 
     html "<h2>Search in " [lindex $targets($host) 0] "</h2>\n"
-
     z39 callback ok-response
     z39 failback fail-response
     if {$host != $oldHost} {
@@ -95,15 +97,16 @@ proc ok-response {} {
     }
     set databases [lindex $targets($host) 1]
 
-    if {[catch {set prevHost $hist([expr $setNo - 1],host)}]} {
+    if {$initSet == ""} {
         set databaseDefault [lindex $databases 0]
         set oSetNo 0
     } else {
-        set oSetNo [expr $setNo - 1]
+        set oSetNo $initSet
         set databaseDefault $hist($oSetNo,database)
     }
+    
     html {<form action="http:} $env(SCRIPT_NAME)
-    html / $sessionId {/search.egw/} $setNo {" method=post>} \n
+    html / $sessionId {/search.egw/} $setNo {" method=get>} \n
     set nodb [llength $databases]
     if {$nodb > 1} {
         if {$nodb > 2} {
@@ -127,34 +130,49 @@ proc ok-response {} {
         }
         html "Input your search criteria:<br>\n"
     }
-}
-{
     set fields [lindex $targets($host) 2]
     for {set no 1} {$no < 4} {incr no} {
         html {<select name="menu} $no {">} \n
+        set template {}
         if {$oSetNo > 0} {
-            html {<option> } $hist($oSetNo,form,menu$no) \n
+            set template [join $hist($oSetNo,form,menu$no)]
+        }
+        if {[string length $template] > 0} {
+            html {<option> } $template "\n"
         }
         foreach f $fields {
             set name [lindex $f 0]
-            if {$oSetNo > 0} {
-                if {$hist($oSetNo,form,menu$no) == $name} continue
-            }
+            if {$template == $name} continue
             html {<option> } $name \n
         }
         html "</select>\n"
         html {<input type="text" name="entry} $no {"}
-        html { size=35>} \n
+        set template {}
+        if {$scanLine == $no} {
+            set template [join $scanTerm " "] 
+        } elseif {[info exists hist($oSetNo,form,entry$no)]} {
+            set template [join $hist($oSetNo,form,entry$no) " "]
+        }
+        if {[string length $template] > 0} {
+            html { value="} $template {"}
+        }
+        html { size=35> }
+        if {[lsearch [z39 options] scan] >= 0} {
+            html {<input type="checkbox" name="scan} $no {" value="1" scan>}
+        }
+        html "<br>\n"
         if {$no < 3} {
             html {<select name="logic} $no {">} \n
+            set template {}
             if {$oSetNo > 0} {
-                html "<option> " $hist($oSetNo,form,logic$no) \n
+                set template [join $hist($oSetNo,form,logic$no) " "]
+            }
+            if {[string length $template] > 0} {
+                html "<option> " $template \n
             }
             foreach op {And Or {And not}} {
-                if {$oSetNo > 0} {
-                    if {$hist($oSetNo,form,logic$no) == $op} continue
-                }
-                html "<option> " $op \n
+                if {$template == $op} continue
+                html "<option> " [join $op " "] \n
             }
             html "</select>\n"
         }
@@ -163,7 +181,6 @@ proc ok-response {} {
 }
 
 <input type=submit name=submit value="Search">
-<input type=submit name=submit value="Scan">
 <input type=reset value="Reset">
 <br>
 {
@@ -174,26 +191,22 @@ proc ok-response {} {
     } else {
         html 20
     }
-    html {" size=3>}
+    html {" size=4>}
 }
 </form>
 <p>
 
 {
-    html {<img src="/gif/button-egw.gif" alt="Europagate" border=0></a>}
-    html {<a href="http:} $env(SCRIPT_NAME)
-    html / $sessionId {/targets.egw}
-    html {"><img src="/gif/button-new-target.gif" alt="New Target" }
-    html {border=0 alt="New Target"></a>}
-}
+    button-europagate
 
-<hr>
-This page is maintained by <a href="mailto:pwh@dtv.dk"> Peter Wad Hansen </a>.
-Last modified 29. september 1995. <br>
-<em> This and the following pages are under construction
-and will continue to be so until the end of December 1995.</em>
+    button-new-target 1
+    button-view-history 0 
+}
 
 {
+    catch maintenance
+    global debug
+    if {!$debug} return
     html "<hr>\n"
     html "<h3>Debug information</h3>\n"
     html "sessionId: $sessionId <br>\n"
@@ -206,6 +219,9 @@ and will continue to be so until the end of December 1995.</em>
     html "databases: " $databases " <br>\n"
     html "setNo: " $setNo " <br>\n"
     html "nextSetNo: " $nextSetNo " <br>\n"
+    html "initSet: " $initSet " <br>\n"
+    html "scanLine: " $scanLine " <br>\n"
+    html "scanTerm: " $scanTerm " <br>\n"
 }
 </body></html>