Changeset 1526 for trunk/grails-app/views/advancedQuery
- Timestamp:
- Feb 16, 2011, 11:12:14 AM (13 years ago)
- Location:
- trunk/grails-app/views/advancedQuery
- Files:
-
- 1 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/views/advancedQuery/_criteria.gsp
r1512 r1526 1 1 <%@ page import="dbnp.query.*" %> 2 <ul id="criteria"> 3 <g:each in="${criteria}" var="criterion" status="j"> 4 <li> 5 <span class="entityfield">${criterion.entityField().toLowerCase()}</span> 6 <span class="operator">${criterion.operator}</span> 7 <span class="value"> 8 <g:if test="${criterion.value != null && criterion.value instanceof Search}"> 9 <g:link action="show" id="${criterion.value.id}">${criterion.value}</g:link> 2 <g:if test="${criteria}"> 3 with 4 <ul id="criteria"> 5 <g:each in="${criteria}" var="criterion" status="j"> 6 <li> 7 <span class="entityfield">${criterion.entityField().toLowerCase()}</span> 8 <span class="operator">${criterion.operator}</span> 9 <span class="value"> 10 <g:if test="${criterion.value != null && criterion.value instanceof Search}"> 11 <g:link action="show" id="${criterion.value.id}">${criterion.value}</g:link> 12 </g:if> 13 <g:else> 14 ${criterion.value} 15 </g:else> 16 </span> 17 <g:if test="${j < criteria.size() -1}"> 18 <g:if test="${search.searchMode == SearchMode.and}">and</g:if> 19 <g:if test="${search.searchMode == SearchMode.or}">or</g:if> 10 20 </g:if> 11 <g:else> 12 ${criterion.value} 13 </g:else> 14 </span> 15 <g:if test="${j < criteria.size() -1}"> 16 <g:if test="${search.searchMode == SearchMode.and}">and</g:if> 17 <g:if test="${search.searchMode == SearchMode.or}">or</g:if> 18 </g:if> 19 </li> 20 </g:each> 21 </ul> 21 </li> 22 </g:each> 23 </ul> 24 </g:if> 25 <g:else> 26 without criteria. 27 </g:else> -
trunk/grails-app/views/advancedQuery/index.gsp
r1512 r1526 30 30 showCriterium("${criterion.entityField().encodeAsJavaScript()}", "${criterion.value.toString().encodeAsJavaScript()}", "${criterion.operator.toString().encodeAsJavaScript()}"); 31 31 </g:each> 32 showHideNoCriteriaItem();33 32 }); 34 33 </g:if> … … 51 50 52 51 <div id="searchForm"> 53 <form id="input_criteria">54 <h2>Add criterium</h2>55 <p class="explanation">56 N.B. Comparing numerical values is done without taking into57 account the units. E.g. a weight of 1 kg equals 1 grams.58 </p>59 <label for="field">Field</label>60 <select name="field" id="queryFieldSelect">61 <option value=""></option>62 <g:each in="${searchableFields}" var="entity">63 <optgroup label="${entity.key}">64 <g:each in="${entity.value}" var="field">65 <option value="${entity.key}.${field}">66 ${field[0].toUpperCase() + field[1..-1]}67 </option>68 </g:each>69 </optgroup>70 </g:each>71 </select>72 73 <label for="value">Comparison</label>74 <select name="operator">75 <option value="equals">Equals</option>76 <option value="contains">Contains</option>77 <option value=">=">Greater than or equals</option>78 <option value=">">Greater than</option>79 <option value="<">Lower than</option>80 <option value="<=">Lower than or equals</option>81 </select>82 83 <label for="value">Value</label>84 <input class='text' type="text" name="value" />85 86 <input class="button" type="button" onClick="addCriterium();" value="Add" />87 </form>88 52 <g:form action="search" method="get"> 89 <label for="entity">Search for</label><g:select from="${entitiesToSearchFor}" optionKey="key" optionValue="value" name="entity" /><br /> 90 <label for="entity">Searchtype</label><g:select from="${searchModes}" name="operator" /><br /> 91 <label for="criteria">Criteria</label> 53 54 <h3><span class="nummer">1</span>Select criteria</h3> 55 <p class="explanation"> 56 N.B. Comparing numerical values is done without taking into 57 account the units. E.g. a weight of 1 kg equals 1 grams. 58 </p> 92 59 <ul id="criteria"> 93 <li class="emptyList">No criteria added. Use the form on the right to specify criteria to search on.</li> 60 <li class="titlerow"> 61 <span class="entityfield"> 62 Field 63 </span> 64 <span class="operator"> 65 Operator 66 </span> 67 <span class="value"> 68 Value 69 </span> 70 </li> 71 <li class="newCriterion"> 72 <span class="entityfield"> 73 <select name="criteria.0.entityfield" id="queryFieldSelect"> 74 <option value=""></option> 75 <g:each in="${searchableFields}" var="entity"> 76 <optgroup label="${entity.key}"> 77 <g:each in="${entity.value}" var="field"> 78 <option value="${entity.key}.${field}"> 79 ${field[0].toUpperCase() + field[1..-1]} 80 </option> 81 </g:each> 82 </optgroup> 83 </g:each> 84 </select> 85 </span> 86 <span class="operator"> 87 <select id="operator" name="criteria.0.operator"> 88 <option value="equals">Equals</option> 89 <option value="contains">Contains</option> 90 <option value=">=">>=</option> 91 <option value=">">></option> 92 <option value="<"><</option> 93 <option value="<="><=</option> 94 </select> 95 </span> 96 <span class="value"> 97 <input class='text' type="text" id="value" name="criteria.0.value" /> 98 </span> 99 <span class="addButton"> 100 <a href="#" onClick="addCriterion(); return false;"> 101 <img src="${fam.icon( name: 'add' )}" border="0"> 102 </a> 103 </span> 104 </li> 94 105 </ul> 95 106 96 <input type="submit" value="Run query" class="submitcriteria" disabled="disabled" /> 107 <div id="searchMode"> 108 <h3><span class="nummer">1b</span>Search mode</h3> 109 <p> 110 Choose how to combine the given criteria:<br /> 111 <g:select from="${searchModes}" name="operator" /> 112 </p> 113 </div> 114 115 <h3><span class="nummer">2</span>Output type</h3> 116 <p> 117 Choose the type of output:<br /> 118 <g:select from="${entitiesToSearchFor}" optionKey="key" optionValue="value" name="entity" /> 119 </p> 120 121 <h3><span class="nummer">3</span>Run query</h3> 122 <p> 123 <input type="submit" value="Run query" class="submitcriteria" /> 124 </p> 97 125 </g:form> 98 126 -
trunk/grails-app/views/advancedQuery/list.gsp
r1524 r1526 56 56 <td>${search.entity}</td> 57 57 <td> 58 <g: each in="${search.getCriteria()}" var="criterion" status="j">59 <g:if test="${j > 0}">, </g:if>58 <g:set var="criteria" value="${search.getCriteria()}" /> 59 <g:each in="${criteria}" var="criterion" status="j"> 60 60 <span class="entityfield">${criterion.entityField()}</span> 61 61 <span class="operator">${criterion.operator}</span> … … 68 68 </g:else> 69 69 </span> 70 <g:if test="${j < criteria.size() -1}"> 71 <g:if test="${search.searchMode == SearchMode.and}">and</g:if> 72 <g:if test="${search.searchMode == SearchMode.or}">or</g:if> 73 </g:if> 70 74 </g:each> 71 75 </td> -
trunk/grails-app/views/advancedQuery/results.gsp
r1524 r1526 12 12 13 13 <div class="searchoptions"> 14 ${search.getNumResults()} <g:if test="${search.getNumResults() == 1}">result</g:if><g:else>results</g:else> found with14 ${search.getNumResults()} <g:if test="${search.getNumResults() == 1}">result</g:if><g:else>results</g:else> found 15 15 <g:render template="criteria" model="[criteria: search.getCriteria()]" /> 16 16 </div> … … 49 49 if( fieldValue ) { 50 50 if( fieldValue instanceof Collection ) { 51 fieldValue = fieldValue.collect { it.toString() }.findAll { it }. join( ', ' );51 fieldValue = fieldValue.collect { it.toString() }.findAll { it }.unique().join( ', ' ); 52 52 } else { 53 53 fieldValue = fieldValue.toString(); -
trunk/grails-app/views/advancedQuery/sampleresults.gsp
r1524 r1526 12 12 13 13 <div class="searchoptions"> 14 ${search.getNumResults()} <g:if test="${search.getNumResults() == 1}">sample</g:if><g:else>samples</g:else> found with14 ${search.getNumResults()} <g:if test="${search.getNumResults() == 1}">sample</g:if><g:else>samples</g:else> found 15 15 <g:render template="criteria" model="[criteria: search.getCriteria()]" /> 16 16 </div> … … 50 50 if( fieldValue ) { 51 51 if( fieldValue instanceof Collection ) { 52 fieldValue = fieldValue.collect { it.toString() }.findAll { it }. join( ', ' );52 fieldValue = fieldValue.collect { it.toString() }.findAll { it }.unique().join( ', ' ); 53 53 } else { 54 54 fieldValue = fieldValue.toString(); -
trunk/grails-app/views/advancedQuery/studyresults.gsp
r1524 r1526 12 12 13 13 <div class="searchoptions"> 14 ${search.getNumResults()} <g:if test="${search.getNumResults() == 1}">study</g:if><g:else>studies</g:else> found with14 ${search.getNumResults()} <g:if test="${search.getNumResults() == 1}">study</g:if><g:else>studies</g:else> found 15 15 <g:render template="criteria" model="[criteria: search.getCriteria()]" /> 16 16 </div> … … 86 86 if( fieldValue ) { 87 87 if( fieldValue instanceof Collection ) { 88 fieldValue = fieldValue.collect { it.toString() }.findAll { it }. join( ', ' );88 fieldValue = fieldValue.collect { it.toString() }.findAll { it }.unique().join( ', ' ); 89 89 } else { 90 90 fieldValue = fieldValue.toString();
Note: See TracChangeset
for help on using the changeset viewer.