Project

General

Profile

1
<%@ page     language="java" %>
2
<!--
3
/**
4
  *  '$RCSfile$'
5
  *      Authors: Matt Jones, CHad Berkley
6
  *    Copyright: 2000 Regents of the University of California and the
7
  *               National Center for Ecological Analysis and Synthesis
8
  *  For Details: http://www.nceas.ucsb.edu/
9
  *
10
  *   '$Author: daigle $'
11
  *     '$Date: 2008-04-02 16:28:31 -0700 (Wed, 02 Apr 2008) $'
12
  * '$Revision: 3780 $'
13
  * 
14
  * This program is free software; you can redistribute it and/or modify
15
  * it under the terms of the GNU General Public License as published by
16
  * the Free Software Foundation; either version 2 of the License, or
17
  * (at your option) any later version.
18
  *
19
  * This program is distributed in the hope that it will be useful,
20
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22
  * GNU General Public License for more details.
23
  *
24
  * You should have received a copy of the GNU General Public License
25
  * along with this program; if not, write to the Free Software
26
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
27
  *
28
  * This is an XSLT (http://www.w3.org/TR/xslt) stylesheet designed to
29
  * convert an XML file showing the resultset of a query
30
  * into an HTML format suitable for rendering with modern web browsers.
31
  */
32
-->
33
<%@ include file="settings.jsp"%>
34
<%@ include file="session_vars.jsp"%>
35
<!-- *********************** START SEARCHBOX TABLE ************************* -->
36
<html>
37
<head>
38
  <title>Metacat Data Catalog Search Page</title>
39
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
40
  <link href="<%=STYLE_SKINS_URL%>/default/default.css" rel="stylesheet" type="text/css">
41
  <script language="javascript" 
42
    type="text/javascript" src="<%=STYLE_SKINS_URL%>/default/default.js">
43
  </script>
44
  <script language="javascript" type="text/javascript">
45
    function trim(stringToTrim) {
46
      return stringToTrim.replace(/^\s*/, '').replace(/\s*$/,'');
47
    }
48
    function allowSearch(formObj) {
49
      var canSearch = true;
50
      var searchString = trim(formObj.elements["anyfield"].value);
51
      if (searchString=="") {
52
        if (confirm("Show *all* data in the Catalog?\n(this may take some time!)            ")) {
53
	      formObj.elements["anyfield"].value = "%";
54
	      canSearch = true;
55
	      } else {
56
	        formObj.elements["anyfield"].focus();
57
	        canSearch = false;
58
	      }
59
      } 
60
      return canSearch;
61
    }
62
    function keywordSearch(formObj, searchKeyword) {
63

    
64
       var searchString = trim(searchKeyword);
65
  
66
        if (searchString=="") searchString="%";
67
  
68
        formObj.anyfield.value=searchString;
69

    
70
        if(checkSearch(formObj)){
71
             formObj.submit();
72
       }
73
       return true;
74
    }
75
    function checkSearch(submitFormObj) {
76
                var checkBox = document.getElementById("searchAll");
77
                var searchBox = document.getElementById("searchBox");
78
                var searchString = trim(searchBox.value);
79

    
80
                if (searchString=="") {
81
                        if (confirm("Show *all* data in the KNB?")) {
82
          			searchString = "%";
83
        		} else {
84
          			return false;
85
        		}		
86
                }
87

    
88
                //if(document.forms[0].radios[0].checked){
89
		if(!checkBox.checked){
90
                        if(searchString!="%"){
91
                                searchBox.name = "title";
92
                                searchBox.id = "searchBox";
93

    
94
                                submitFormObj.surName.value = searchString;
95
                                submitFormObj.givenName.value = searchString;
96
                                submitFormObj.keyword.value = searchString;
97
                                submitFormObj.organizationName.value = searchString;
98
                                submitFormObj.para.value = searchString;
99
                                submitFormObj.geographicDescription.value = searchString;
100
                                submitFormObj.literalLayout.value = searchString;
101
                                submitFormObj.operator.value="UNION";
102
                                var abs = document.getElementById("abstract");
103
                                abs.value=searchString;
104
                        } else {
105
                                searchBox.name = "anyfield";
106
                                searchBox.id = "searchBox";
107
                                searchBox.value = "%";
108

    
109
                                submitFormObj.surName.value = "";
110
                                submitFormObj.givenName.value = "";
111
                                submitFormObj.keyword.value = "";
112
                                submitFormObj.organizationName.value = "";
113
                                submitFormObj.para.value = "";
114
                                submitFormObj.geographicDescription.value = "";
115
                                submitFormObj.literalLayout.value = "";
116
                                submitFormObj.operator.value="INTERSECT";
117
                                var abs = document.getElementById("abstract");
118
                                abs.value="";
119

    
120
			 }
121
                } else {
122
                        searchBox.name = "anyfield";
123
                        searchBox.id = "searchBox";
124

    
125
                        submitFormObj.surName.value = "";
126
                        submitFormObj.givenName.value = "";
127
                        submitFormObj.keyword.value = "";
128
                        submitFormObj.organizationName.value = "";
129
                        submitFormObj.para.value = "";
130
                        submitFormObj.geographicDescription.value = "";
131
                        submitFormObj.literalLayout.value = "";
132
                        submitFormObj.operator.value="INTERSECT";
133
                        var abs = document.getElementById("abstract");
134
                        abs.value="";
135
                }
136

    
137

    
138
                var radioInput = document.getElementsByName("search");
139
		       radioInput[0].name = "";
140

    
141
                return true;
142
        }
143
  </script>
144
</head>
145

    
146
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
147
  <table width="750px" align="center" cellspacing="0" cellpadding="0">
148
    <tr> 
149
      </td>
150
      <td  class="sectionheader" width="750px" >
151
        search for data 
152
      </td>
153
    </tr>
154
    <tr> 
155
      <td colspan="3">
156
        <table width="100%" border="0" cellpadding="0" cellspacing="0" 
157
          class="subpanel">
158
          <tr> 
159
            <td colspan="2"></td>
160
          </tr>
161
          <tr valign="baseline"> 
162
            <td colspan="2">
163
              <form action="<%=SERVLET_URL%>" name="searchForm" method="post" 
164
                target="_top" onSubmit="return checkSearch(this);">
165
                <%=sessionidField%>
166
                <%=SIMPLE_SEARCH_METACAT_POST_FIELDS%>
167
                <input type="hidden" name="organizationName">
168
  			    <input type="hidden" name="surName">
169
  			    <input type="hidden" name="givenName">
170
  			    <input type="hidden" name="keyword">
171
  			    <input type="hidden" name="para">
172
  			    <input type="hidden" name="geographicDescription">
173
  			    <input type="hidden" name="literalLayout">
174
  			    <input type="hidden" name="abstract/para" id="abstract">
175
                <table width="100%" border="0" cellpadding="5" cellspacing="0">
176
                  <tr> 
177
                    <td width="94" rowspan="2" align="left" valign="top">
178
                      <img src="<%=relativeRoot%>/images/search.jpg" 
179
                        width="94" height="80">
180
                    </td>
181
                    <td colspan="2" valign="middle" class="text_example">
182
                      <p> 
183
                        <%= loginStatus %> &nbsp;
184
                        (<a href="<%=STYLE_SKINS_URL%>/default/index.jsp#loginanchor" 
185
                          target="_top"><%=loginButtonLabel%></a>).&nbsp; 
186
                        You may search the data catalog without being logged 
187
                        into your account, but will have access only to 
188
                        &quot;public&quot; data (see &quot;login &amp; 
189
                        registration&quot;)
190
                      </p>
191
                      <p>
192
                        Enter a search phrase (e.g. biodiversity) to search 
193
                        for data sets in the data catalog, or simply browse 
194
                        by category using the links below.
195
                      </p>
196
                    </td>
197
                  </tr>
198
                  <tr valign="middle"> 
199
                    <td align="right" class="searchcat"> 
200
                      <input type="text" name="anyfield" size="30" 
201
                        maxlength="200" id="searchBox">&nbsp;&nbsp;
202
                    </td>
203
                    <td width="365" align="left" class="searchcat"> 
204
                      <input type="submit" value="Search Data Catalog">
205
                      &nbsp;&nbsp;&nbsp;
206
                      
207
                      <a target="_top" 
208
                        href="<%=STYLE_SKINS_URL%>/default/index_advanced.jsp"> 
209
                          &raquo;&nbsp;advanced&nbsp;search&nbsp;&laquo;</a>
210
                      
211
                    </td>
212
                  </tr>
213

    
214
                </table>
215
              </form>
216
            </td>
217
          </tr>
218
         <tr valign="baseline" >
219
         
220
             <td colspan="2">
221
                 <table width="100%" border="0" cellpadding="0" cellspacing="0" >
222
                   <from>
223
		            <tr>
224
		               <td width="105px" >		    
225
			            </td>
226
			            <td >
227
			                 <input name="search" type="radio" checked><span class="text_plain"> Search Title, Abstract, Keywords, Personnel (Quicker)</span></input>
228
		               </td>
229
		           </tr>
230
		            <tr>
231
		                 <td width="105px">		    
232
			              </td>
233
			              <td >
234
			                    <input name="search" type="radio" id="searchAll"><span class="text_plain"> Search all fields (Slower)</span></input>
235
		                 </td>
236
		           </tr>
237
		        </form>
238
		      </table>
239
             </td>
240
		  </tr>
241
	  
242
<%
243
/*
244
US Geography
245
------------
246
Northeast, Southeast, South, Midwest, Northwest, Southwest, Pacific Ocean, Atlantic Ocean, 
247
Great Lakes, (could also list states here)
248
*/
249
%>
250
          <tr> 
251
            <td width="375" class="searchcat">Taxonomy</td>
252
            <td width="365" class="searchcat">Habitat</td>
253
          </tr>
254
          <tr> 
255
            <td width="375" class="searchsubcat">
256
              <a href="#" onClick="keywordSearch(document.searchForm, 'plant')" class="searchsubcat">Plant,</a> 
257
              <a href="#" onClick="keywordSearch(document.searchForm, 'invertebrate')" class="searchsubcat">Invertebrate,</a> 
258
              <a href="#" onClick="keywordSearch(document.searchForm, 'mammal')" class="searchsubcat">Mammal,</a> 
259
              <a href="#" onClick="keywordSearch(document.searchForm, 'bird')" class="searchsubcat">Bird,</a> 
260
              <a href="#" onClick="keywordSearch(document.searchForm, 'reptile')" class="searchsubcat">Reptile,</a> 
261
              <a href="#" onClick="keywordSearch(document.searchForm, 'amphibian')" class="searchsubcat">Amphibian,</a>
262
              <a href="#" onClick="keywordSearch(document.searchForm, 'fungi')" class="searchsubcat">Fungi,</a>
263
              <a href="#" onClick="keywordSearch(document.searchForm, 'microbe')" class="searchsubcat">Microbe,</a>
264
              <a href="#" onClick="keywordSearch(document.searchForm, 'virus')" class="searchsubcat">Virus</a>
265
            </td>
266
            <td width="365" class="searchsubcat">
267
              <a href="#" onClick="keywordSearch(document.searchForm, 'alpine')" class="searchsubcat">Alpine,</a> 
268
              <a href="#" onClick="keywordSearch(document.searchForm, 'aquatic')" class="searchsubcat">Aquatic,</a> 
269
              <a href="#" onClick="keywordSearch(document.searchForm, 'beach')" class="searchsubcat">Beach,</a> 
270
              <a href="#" onClick="keywordSearch(document.searchForm, 'benthic')" class="searchsubcat">Benthic,</a> 
271
              <a href="#" onClick="keywordSearch(document.searchForm, 'desert')" class="searchsubcat">Desert,</a> 
272
              <a href="#" onClick="keywordSearch(document.searchForm, 'estuar')" class="searchsubcat">Estuary,</a>
273
              <a href="#" onClick="keywordSearch(document.searchForm, 'forest')" class="searchsubcat">Forest,</a>
274
              <a href="#" onClick="keywordSearch(document.searchForm, 'grassland')" class="searchsubcat">Grassland,</a>
275
              <a href="#" onClick="keywordSearch(document.searchForm, 'marine')" class="searchsubcat">Marine,</a>
276
              <a href="#" onClick="keywordSearch(document.searchForm, 'montane')" class="searchsubcat">Montane,</a>
277
              <a href="#" onClick="keywordSearch(document.searchForm, 'ocean')" class="searchsubcat">Oceanic,</a>
278
              <a href="#" onClick="keywordSearch(document.searchForm, 'savanna')" class="searchsubcat">Savanna,</a>
279
              <a href="#" onClick="keywordSearch(document.searchForm, 'shrubland')" class="searchsubcat">Shrubland,</a>
280
              <a href="#" onClick="keywordSearch(document.searchForm, 'terrestrial')" class="searchsubcat">Terrestrial,</a>
281
              <a href="#" onClick="keywordSearch(document.searchForm, 'tundra')" class="searchsubcat">Tundra,</a>
282
              <a href="#" onClick="keywordSearch(document.searchForm, 'urban')" class="searchsubcat">Urban,</a>
283
              <a href="#" onClick="keywordSearch(document.searchForm, 'wetland')" class="searchsubcat">Wetland</a>
284
            </td>
285
          </tr>
286
          <tr> 
287
            <td width="375">&nbsp;</td>
288
            <td width="365">&nbsp;</td>
289
          </tr>
290
        </table>
291
      </td>
292
    </tr>
293
  </table>
294
</body>
295
<!-- ************************* END SEARCHBOX TABLE ************************* -->
(10-10/14)