source: MILK/trunk/milk_server/milk_server/templates/browse/browse_functions.html @ 5261

Subversion URL:
Revision 5261, 6.9 KB checked in by cbyrom, 12 years ago (diff)

Lots of tidy ups to MILK codebase:

Implement new input search filters - with javascript datapickers to
pick the date ranges + add the vocab search ahead text input and
combine this with the text input.

Refactor discovery controller to tidy it up significantly - making more
structured and improving error handling and logging. Improve
templates for the search filter, splitting into multiple files to
organise better.

Various tidying up and tweaks of other codebase - e.g. standardising
use of global variables across app.

1<!--! A collection of template definitions for use in atom output construction -->
2<html xmlns="" 
3        xmlns:py=""
4        xmlns:xi=""
5        py:strip="">
7    <xi:include href="../utils.html" />
8        <xi:include href="../vocabsearch/vocabsearch.html" />
10    <div py:def="searchTextInputs()">
11        <div class="contentWrap">
12            <p>The NERC Data Discovery Service allows you to find data resources held within the NERC DataGrid (NDG) catalogue. 
13            The catalogue makes data discovery easier as it connects data held in managed archives and other initiatives.</p>
14            <p>It is populated with 'discovery' metadata (information about data sets) harvested on a regular basis from the
15            NERC Data Centres and other providers in the UK and worldwide. </p>
16            <p>Choose one or more search categories to query the catalogue and return data sets of interest. 
17            Links to further information and/or data access are provided in the responses.</p>
18            <div class="searchHdr">Vocab term search <span py:replace="helpIcon('term_search_help')"/></div>
19            <div id="term_search_help" class="hidden" >
20                <div class="helptxt">
21                 <p>Vocab term search provides an autocomplete text field - which searches the vocabulary server
22                 for terms which match the input text - suggesting possible terms to use in a search.</p>
23                 <p>Note, the text field will ONLY accept valid vocab terms and when these are searched on, a
24                 standard text search, similar to that facilitated by the 'Free text search' input, is undertaken.
25                 Note, also, if both vocab term and free text data are input, both are used in the subsequent
26                 text search.</p>
27                 <p>
28                 Terms are only looked up after two characters are entered, to narrow options.  Additionally, it is
29                 possible to use the wildcard, '*' to match multiple letters in a term.</p>
30                </div>
31            </div>
32                    <div py:replace="vocabSearchAutoComplete(showInfo = False)" />
33            <div class="searchHdr">Free text search <span py:replace="helpIcon('fts_help')"/></div>
34            <div id="fts_help" class="hidden" >
35                <div class="helptxt">
36                 <p>Free text search looks through the entire database of discovery documents, or it can be limited
37                    to the Author (dataset creator), or Parameter fields</p>
38                    <p> Note that it is possible to get a document returned which apparently does not include the
39                    search term; this can occur when the html view does not reflect the entire document content.
40                    The document pages include links to fuller and more original versions in viewable XML if you
41                    suspect this is occurring and wish to track down obscure matches.</p>
42                </div>
43            </div>
44            <div class="SearchBox">
45                <label for="searchString"><input name="searchString" type="text" id="searchString" size="25" value="$c.searchString"/></label>
46                <label for="textTarget">
47                    <select name="textTarget" id="textTarget">
48                                        <option value="All" selected="selected">All</option>
49                        <option value="Authors">Authors</option>
50                        <option value="Params">Parameters</option> 
51                    </select>
52                </label>
53            </div>
54                <div class="searchHdr">Temporal coverage (YYYY/MM/DD)&nbsp;<span py:replace="helpIcon('temcov_help')"/></div>
55            <div id="temcov_help" class="hidden">
56                <div class="helptxt">
57                    <p>You can find datasets which have data within a specific time range by using the temporal coverage</p>
58                </div>
59            </div>
60                <script type="text/javascript" src="$g.server/js/date-picker-v4/js/datepicker.js"></script>
61                <link href="$g.server/js/date-picker-v4/css/datepicker.css" rel="stylesheet" type="text/css" />
62            <div class="SearchStartDate">
63                    <span class="SearchTxt">Start date</span>
64                                <input type="text" id="startDateID" name="startDate" class="dateformat-Y-sl-m-sl-d" value="" />
65                        </div>
66           <div class="SearchEndDate">
67                <span class="SearchTxt">End date&nbsp;&nbsp;</span>
68                                <input type="text" id="endDateID" name="endDate" class="dateformat-Y-sl-m-sl-d" value="" />
69           </div>       
70               <div class="searchHdr">Source data providers <span py:replace="helpIcon('datpro_help')"/></div>
71           <div id="datpro_help" class="hidden">
72               <div class="helptxt">
73                        <p>Your search can be limited to NERC data centres alone</p>
74                   </div>
75           </div>
76           <div class="SearchSource">
77               <label for="All"><input type="radio" name="source" value="All" id="All" />All</label>
78               &nbsp;&nbsp;&nbsp;
79               <label for="nercddc"><input type="radio" name="source" value="NERC_DDC" id="nercddc" checked="checked"/>NERC Data Centres only</label>
80           </div><br/>                 
81           <div id="SearchSubmit">
82                        <input name="Search" type="submit" value="Search" />&nbsp;&nbsp;&nbsp;
83                <input name="ClearForm" type="submit" value="Clear form" />
84           </div>
85           <br />
86        </div>
87    </div>
89    <div py:def="searchMapInputs()">
90        <?python
91        #Search Types
92        sps=[['overlaps','overlaps'],['does not overlap','doesNotOverlap'],['is within','within']]
93        ?>
94        <div class="searchHdr">Spatial coverage <span py:replace="helpIcon('spacov_help')"/></div>
95        <table>
96                <tr>
97                <td colspan="3">Look for data which
98                <select name="geoSearchType">${Markup(h.options_for_select(sps,c.geoSearchType))}</select>
99                        the search region.</td>
100                </tr>
101            <tr>
102                    <td colspan="3">
103                <div id="map"></div>
104                <div id="spacov_help" class="hidden">
105                    <div class="helptxt">
106                            <p> The default search is a global search. You can select a limited geospatial region using either the text boxes or the map.
107                             The default is to limit to datasets which overlap with a search region, but you can also aim to find only the datasets
108                             within the search region, or which <b>don't</b> overlap with the search region too. </p>
109                             <p> Or at least that's what should happen. Right now (December 3, 2007) only "overlaps" works!</p>
110                        </div>
111                </div>
112                        </td>
113                    </tr>
114                <tr>
115                    <td align="center">
116                                <div id="dims"/>
117                        </td>
118                </tr>
119        </table>
120    </div>
Note: See TracBrowser for help on using the repository browser.