Attempt to inform user if session has really terminated.
[egate.git] / www / mquery.egw
index af33dda..b694786 100644 (file)
@@ -1,13 +1,13 @@
 <html>
-<head>
-<title> WWW/Z39.50 Gateway Query Form</title>
-</head>
-<body>
 {
-# $Id: mquery.egw,v 1.11 1996/01/26 15:50:07 adam Exp $
+# $Id: mquery.egw,v 1.16 1996/03/14 11:50:45 adam Exp $
 
     if {[info commands saveState] == ""} {
         source z39util.tcl
+        if {![info exists debug]} {
+            session-lost
+            egw_abort
+        }
     }
 
     global setNo
         set setNo 1
     }
 
+    html {<head><title> WWW/Z39.50 Gateway Query Form</title></head><body>}
+
     set useIcons 1
-    button-europagate
-    button-new-target 0
+    button-main
+    button-new-target
 
     html {<form action="http:} $env(SCRIPT_NAME)
     html / $sessionId {/msearch.egw/} $setNo {" method=get>} \n
         lappend hist($setNo,$i,database) $base
     }
     set oSetNo [lindex $sessionParms 0]
-    if {$i == 0 && $oSetNo != ""} {
+    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) \
         html "<h2>No targets specified</h2></body></html>"
         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
 
-    html "Input your search criteria:<br>\n"
+    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"
     }
+
     html {<input type=submit value="Search"><input type=reset value="Reset">}
     html "<br>\n"
-    html {Number of records to display in the result set list: }
-    html {<input type="text" name="hits" value="}
-    html 10
-    html {" size=3></form>}
-    
+
+    html {<b>Display each record in <select name="format">}
+    if {![string compare $curFormat brief]} {
+        html "<option>brief\n"
+        html "<option>medium\n"
+    } else {
+        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-europagate
-    button-new-target 0
+    button-main
+    button-new-target
 }
 {
     catch maintenance