Major revision. Single-target result set can be reached from the
[egate.git] / www / mquery.egw
index db1f8eb..364a8cd 100644 (file)
@@ -4,7 +4,7 @@
 </head>
 <body>
 {
-# $Id: mquery.egw,v 1.6 1995/12/21 15:49:51 adam Exp $
+# $Id: mquery.egw,v 1.15 1996/03/13 14:07:29 adam Exp $
 
     if {[info commands saveState] == ""} {
         source z39util.tcl
         set setNo 1
     }
 
+    set useIcons 1
+    button-main
+    button-new-target
+
     html {<form action="http:} $env(SCRIPT_NAME)
-    html / $sessionId {/msearch.egw/} $setNo {" method=post>} \n
+    html / $sessionId {/msearch.egw/} $setNo {" method=get>} \n
 
     set phost {}
     set i 0
-    foreach t [lsort [wform target]] {
+    foreach t [lsort [egw_form target]] {
         set host [lindex $t 0]
         set base [lindex $t 1]
         if {$host != $phost} {
         }
         lappend hist($setNo,$i,database) $base
     }
+    set oSetNo [lindex $sessionParms 0]
+    if {$oSetNo < 0} {
+        set oSetNo 0
+    }
+    if {$i == 0 && $oSetNo && [info exists hist($oSetNo,0,host)]} {
+        for {set i 1} {$i <= $hist($oSetNo,0,host)} {incr i} {
+            set hist($setNo,$i,host) $hist($oSetNo,$i,host)
+            set hist($setNo,$i,idAuthentication) \
+                $hist($oSetNo,$i,idAuthentication)
+            set hist($setNo,$i,database) $hist($oSetNo,$i,database)
+        }
+        incr i -1
+    }
     if {$i == 0} {
         html "<h2>No targets specified</h2></body></html>"
-        wabort 1
+        egw_abort 1
     }
+
+    set curSort server
+    set curFormat brief    
+    if {$oSetNo} {
+        set curSort $hist($oSetNo,sort)
+        set curFormat $hist($oSetNo,format)
+    }
+
     set hist($setNo,0,host) $i
-}
-<h2>Input your search criteria: </h2><br>
-{
+
+    html "<b>Fill-in this search form:</b><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} {
+            set template [join $hist($oSetNo,form,menu$no)]
+        }
+        if {[string length $template] > 0} {
+            html {<option> } $template "\n"
+        }
         foreach f $fields {
-            html {<option> } [lindex $f 0] \n
+            set name [lindex $f 0]
+            if {$template == $name} continue
+            html {<option> } $name \n
         }
         html "</select>\n"
-        html {<input type="text" name="entry} $no {" size=35>} \n
+
+        html {<input type="text" name="entry} $no {" size=35 value="}
+
+        if {$oSetNo} {
+            if {[info exists hist($oSetNo,form,entry$no)]} {
+                html [join $hist($oSetNo,form,entry$no) " "]
+            }
+        }
+        html {">} \n
         if {$no < 3} {
             html {<select name="logic} $no {">} \n
-            html "<option> And\n"
-            html "<option> Or\n"
-            html "<option> And not\n"
+            set template {}
+            if {$oSetNo} {
+                set template [join $hist($oSetNo,form,logic$no) " "]
+            }
+            if {[string length $template] > 0} {
+                html "<option> " $template \n
+            }
+            foreach op {And Or {And not}} {
+                if {$template == $op} continue
+                html "<option> " [join $op " "] \n
+            }
             html "</select>\n"
         }
         html "<br>\n"
     }
-}
-<input type=submit value="Search"><input type=reset value="Reset">
-<br>
-{
-    html {Number of records to display in the result set list: }
-    html {<input type="text" name="hits" value="}
-    html 10
-    html {" size=3>}
-}
-</form>
-{
-    global useIcons
-    if {$useIcons} {
-        html {<img src="/gif/button-egw.gif">}
-    }    
-    html {<a href="http:} $env(SCRIPT_NAME)
-    html / $sessionId {/mtargets.egw}
-    if {$useIcons} {
-        html {"><img src="/gif/button-new-target.gif" border=0></a>}
+
+    html {<input type=submit value="Search"><input type=reset value="Reset">}
+    html "<br>\n"
+
+    html {<b>Display each record in <select name="format">}
+    if {![string compare $curFormat brief]} {
+        html "<option>brief\n"
+        html "<option>medium\n"
     } else {
-        html {"> New target </a>}
+        html "<option>medium\n"
+        html "<option>brief\n"
     }
+    html "</select> notation"
+    html { and sort by <select name="sort">}
+    if {![string compare $curSort score]} {
+        html "<option>score\n"
+        html "<option>server\n"
+    } else {
+        html "<option>server\n"
+        html "<option>score\n"
+    }
+    html "</select></b><br>\n"
+
+    set useIcons 0
+    button-main
+    button-new-target
 }
-<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>
 {
+    catch maintenance
+    if {!$debug} return
     html "<hr>\n"
     html "<h3>Debug information</h3>\n"
     html "sessionId: $sessionId <br>\n"
@@ -102,7 +153,7 @@ and will continue to be so until the end of December 1995.</em>
         html "host=" $hist($setNo,$i,host) " " $hist($setNo,$i,database) 
         html "<br>\n"
     }
-    html "form: " [wform] " <br>\n"
+    html "form: " [egw_form] " <br>\n"
     html "target: " $host " <br>\n"
     html "setNo: " $setNo " <br>\n"
     html "nextSetNo: " $nextSetNo " <br>\n"