Changeset 642


Ignore:
Timestamp:
Jul 2, 2010, 10:16:19 AM (10 years ago)
Author:
vinlud
Message:

changes so far, not working yet

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/dbnp/query/SimpleQueryController.groovy

    r594 r642  
    1818import dbnp.studycapturing.Study
    1919import org.compass.core.engine.SearchEngineQueryParseException
     20import dbnp.rest.common.CommunicationManager
    2021
    2122class SimpleQueryController {
     
    3132    def pagesFlow = {
    3233
     34        // Starting simpleQuery flow, initialize variables
    3335        onStart {
    3436            println "Starting webflow simpleQuery"
    3537            flow.search_term            = null
    36             flow.page = 0
     38            flow.page                   = 0
    3739                        flow.pages = [
    3840                [title: 'Query'],
     
    4446                query {
    4547                        render(view: "/simpleQuery/mainPage")
     48
    4649            onRender {
    4750              println "Rendering mainPage"
     51              flow.operators              = ['>', '=', '<']
     52              flow.showFirstRowCompounds  = true
    4853              flow.species = Term.findAll()
    4954              flow.page = 1
     
    6469        searching {
    6570           action {
     71              println "Starting search..."
     72              def searchResult
     73              def searchGscfResult
     74              def searchSamResult
    6675
    67               println "Searching"
    68               println params
    69              
     76              // TODO: walk parameters, remove empty entries
     77
     78              // Map parameters
    7079              flow.search_term            = params.search_term
    7180              flow.search_sa_compounds    = params.sa_compound
     81              flow.search_sa_operators    = params.sa_operator
    7282              flow.search_sa_values       = params.sa_value
    7383              flow.search_tt_genepaths    = params.sa_genepath
    7484              flow.search_tt_regulations  = params.sa_regulation
    7585
    76               // Searchable plugin not yielding results yet
    77               /*
     86              // Check to see how parameters are being handled
     87              if (flow.search_sa_compounds.class.getName() == "java.lang.String") {
     88                println "string"
     89              } else {
     90                println "array of size " + flow.search_sa_compounds.length
     91              }
     92
     93              // Search the keyword with the Searchable plugin
    7894              try {
    79                 println searchableService.countHits("mouse")
     95                searchGscfResult = searchableService.search(flow.search_term)
    8096              } catch (SearchEngineQueryParseException ex) {
    81                 //return [parseException: true]
    8297                println ex
     98                return [parseException: true]
    8399              }
    84               */
    85100
    86               // Search for the term in Terms
    87               // results = searchableService.search(flow.search_term, type:"Term")
     101              // Map non-study objects to Studies
     102              // ... todo when the plugin works and I can see the output
    88103
    89               // Map the Terms to Studies
    90               // ...
     104              // Search in the SAM module
     105              println "checking compounds"
     106              if (flow.search_sa_compounds) {
     107                objComs = new CommunicationManager()
    91108
    92               // Save the results in the flow
    93               // flow.studies = results
     109                if (flow.search_sa_compounds.class.getName() == "java.lang.String") {
     110                  searchSamResult = objComs.getSAMStudies(flow.search_sa_compounds, flow.search_sa_values, flow.search_sa_operators)
     111                } else {
     112                  def tmpSamResult
     113                  flow.search_sa_compounds.each {
     114                    obj, i -> println " ${i}: ${obj}" // objComs.getSAMStudies()
     115                    tmpSamResult = objComs.getSAMStudies(flow.search_sa_compounds[i], flow.search_sa_values[i], flow.search_sa_operators[i])
     116
     117                    // Combine each search
     118                    // searchSamResult = Merge(searchSamResult, tmpSamResult)
     119                    searchSamResult = tmpSamResult
     120                  };
     121                }
     122              }
     123
     124             // Merge the results of all searches
     125             /*
     126             if (searchGscfResult.size() > 0) {
     127                searchResult = Merge(searchSamResult, searchGscfResult)
     128             }             
     129             */
    94130
    95131
    96 
    97               // As a usable result set we will use all studies for now
    98               flow.listStudies = Study.findAll()
     132             // Save the results in the flow
     133             flow.listStudies = searchGscfResult.results
    99134
    100135           }
     
    113148              flow.page = 2
    114149
     150              // TODO: Fix the showing of entered data, broke with plugin develeopment
    115151              if (flow.search_sa_compounds) {
    116152                if (flow.search_sa_compounds.class.getName() == "java.lang.String") {
     
    120156                }
    121157              }
    122 
    123               println flow.search_sa_compounds.getClass()
    124158            }
    125159
  • trunk/grails-app/views/simpleQuery/common/_query.gsp

    r594 r642  
    2525      </div>
    2626    </div>
    27     <g:submitButton name="search" value="Search" /> <g:if test="${search_term}"><g:submitButton name="reset" value="Clear" /></g:if>
     27
     28    <br>
     29
     30    <g:submitButton name="search" value="Search"  /> <g:if test="${search_term}"><g:submitButton name="reset" value="Clear" /></g:if>
    2831
    2932    <br><br>
     
    3336      <div class="element">
    3437        <div id="compoundGroup">
    35           <g:if test="${resultString}">
     38
     39          <g:if test="${showFirstRowCompounds}">
    3640          <div id="compoundRow1">
    37             <div class="description">Compound (e.g. 'glucose')</div>
     41            <div class="descriptionSA">Compound</div>
    3842            <div class="input"><g:textField name="sa_compound" value="${search_sa_compounds}"/></div>
    39             <div class="description">Value</div>
     43            <div class="descriptionSA">Operator</div>
     44            <div class="input" id="operatorInput"><g:select name="operator" from="${operators}" value="="/></div>
     45            <div class="descriptionSA">Value</div>
    4046            <div class="input"><g:textField name="sa_value" value="${search_sa_values}"/></div>
    4147          </div>
    4248          </g:if>
     49
    4350          <g:else>
    4451            <g:each status="i" in="${search_sa_compounds}" var="compound">
    4552            <div id="compoundRow${i}">
    46               <div class="description">Compound (e.g. 'glucose')</div>
     53              <div class="descriptionSA">Compound (e.g. 'glucose')</div>
    4754              <div class="input"><g:textField name="sa_compound" value="${compound}"/></div>
    48               <div class="description">Value</div>
     55              <div class="descriptionSA">Type of regulations</div>
     56              <div class="input"><g:select name="operator" from="${operators}" value="="/></div>
     57              <div class="descriptionSA">Value</div>
    4958              <div class="input"><g:textField name="sa_value" value="${search_sa_values[i]}"/></div>
    5059            </div>
     
    5261          </g:else>
    5362        </div>
    54         <div id="addCompound">Add compound</div>
     63        <div id="addCompound" class="submit">Add compound</div>
    5564      </div>
    5665
  • trunk/web-app/css/simpleQuery.css

    r628 r642  
    2121    display: inline-block;
    2222    font-size: 11px;
    23     width: 75px;
     23    width: 100px;
    2424    word-wrap: break-word;
    2525}
  • trunk/web-app/js/simpleQuery.js

    r594 r642  
    2727
    2828        var newCompoundRowDiv1 = document.createElement('div');
    29         newCompoundRowDiv1.setAttribute('class', 'description');
     29        newCompoundRowDiv1.setAttribute('class', 'descriptionSA');
    3030        newCompoundRowDiv1.innerHTML = "Compound";
    3131        newCompoundDiv.appendChild(newCompoundRowDiv1);
     
    3737
    3838        var newCompoundRowDiv3 = document.createElement('div');
    39         newCompoundRowDiv3.setAttribute('class', 'description');
    40         newCompoundRowDiv3.innerHTML = "Value";
     39        newCompoundRowDiv3.setAttribute('class', 'descriptionSA');
     40        newCompoundRowDiv3.innerHTML = "Operator";
    4141        newCompoundDiv.appendChild(newCompoundRowDiv3);
    4242
    4343        var newCompoundRowDiv4 = document.createElement('div');
    4444        newCompoundRowDiv4.setAttribute('class', 'input');
    45         newCompoundRowDiv4.innerHTML = "<input type='text' name='sa_value' value=''>";
     45        var newSelectBox = document.getElementById('operatorInput');
     46        newCompoundRowDiv4 = newSelectBox.cloneNode(true);
    4647        newCompoundDiv.appendChild(newCompoundRowDiv4);
    4748
     49        var newCompoundRowDiv5 = document.createElement('div');
     50        newCompoundRowDiv5.setAttribute('class', 'descriptionSA');
     51        newCompoundRowDiv5.innerHTML = "Value";
     52        newCompoundDiv.appendChild(newCompoundRowDiv5);
     53
     54        var newCompoundRowDiv6 = document.createElement('div');
     55        newCompoundRowDiv6.setAttribute('class', 'input');
     56        newCompoundRowDiv6.innerHTML = "<input type='text' name='sa_value' value=''>";
     57        newCompoundDiv.appendChild(newCompoundRowDiv6);
    4858        compoundGroup.appendChild(newCompoundDiv);
    4959
Note: See TracChangeset for help on using the changeset viewer.