Changeset 196
- Timestamp:
- Feb 12, 2010, 7:56:06 PM (13 years ago)
- Location:
- trunk/grails-app
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/controllers/SearchableController.groovy
r193 r196 21 21 * Basic web interface for Grails Searchable Plugin 22 22 * 23 * @author Maurice Nicholson23 * @author Adem and Jahn 24 24 */ 25 25 class SearchableController { … … 28 28 def selectsample = { 29 29 30 println "in selectsample: " 31 params.each{println it} 32 33 // prepare showing all studies selected in the previous view 34 def selectedStudies = [] 35 def selectedStudyIds = params['selectedStudyIds'] 36 37 if(selectedStudyIds!=null) 38 { 39 def list = selectedStudyIds.findAll(/(\d)+/) 40 selectedStudies = list.collect{ dbnp.studycapturing.Study.get(it) } 41 } 42 else 43 { 44 def tmpList = [] 45 def studyList = dbnp.studycapturing.Study.list() 46 selectedStudyIds = [] 47 params.each{ key,values-> 48 if (values=="on") tmpList.add(key) 49 } 50 51 for (i in studyList) 52 if (tmpList.contains(i.getId().toString())) 53 { 54 selectedStudyIds.add(i.id) 55 selectedStudies.add(i) 56 } 57 } 58 59 60 61 // subgroups 62 // provide list of subgroups depending on the type of subgrouping 63 // selected by the user 64 def subgroups = [] 65 def submitButton = params["submit"] // this button's value determines the kind of subgrouping 66 67 switch(submitButton) 68 { 69 case "Subject Groups": 70 render(params) 71 render("Subject Groups") 72 subgroups=["subject group 1","subject group 2"] 73 render(view:"selectsample",model:[selectedStudies:selectedStudies,selectedStudyIds:selectedStudyIds,subgroups:subgroups]) 74 break 75 case "Event Groups": 76 render("Event Groups") 77 subgroups=["event group 1","event group 2"] 78 render(view:"selectsample",model:[selectedStudies:selectedStudies,selectedStudyIds:selectedStudyIds,subgroups:subgroups]) 79 break 80 case "Starting Time Groups": 81 render("Starting Time Groups") 82 subgroups=["time group 1","time group 2"] 83 render(view:"selectsample",model:[selectedStudies:selectedStudies,selectedStudyIds:selectedStudyIds,subgroups:subgroups]) 84 break 85 case ">> Execute and continue with biomarker selection": 86 render("Starting Time Groups") 87 break 88 case "<< Back to study selection": 89 break 90 } 91 render(view:"selectsample",model:[selectedStudies:selectedStudies,selectedStudyIds:selectedStudyIds,subgroups:subgroups]) 30 92 } 93 94 95 31 96 /** 32 97 * Index page with search form and results … … 60 125 render("unindexAll done") 61 126 } 127 128 129 def subjectGroups = { render ("hello") } 130 131 62 132 } -
trunk/grails-app/views/searchable/index.gsp
r194 r196 87 87 <tr> 88 88 <td> 89 <input type="checkbox" name="${result. title}" id="${result.title}">89 <input type="checkbox" name="${result.id}" id="${result.title}"> 90 90 </td> 91 91 <td> -
trunk/grails-app/views/searchable/selectsample.gsp
r194 r196 4 4 <title>Generic Study Capture Framework - Query studies</title> 5 5 <meta name="layout" content="main" /> 6 <g:setProvider library="jquery"/> 7 <script src = ${createLinkTo(dir: 'js/jquery_combobox', file: 'ui.core.js')}></script> 8 <script src = ${createLinkTo(dir: 'js/jquery_combobox', file: 'ui.combobox')}></script 6 9 </head> 7 10 … … 11 14 <br> 12 15 13 <% def tmpList = [] %>14 <% studyList = dbnp.studycapturing.Study.list() %>15 <% def selectedStudies = [] %>16 16 17 <% params.each{key,values-> %> 18 <% if (values=="on"){ %> 19 <% tmpList.add(key) %> 20 <% } }%> 17 <g:form action="selectsample" url > 21 18 22 <% for (i in studyList) {%> 23 <% if (tmpList.contains(i.getTitle())) { %> 24 <% selectedStudies.add(i) %> 25 <% }} %> 26 19 20 <br> <%= params %> 21 <br> <%= selectedStudyIds.each{ println it } %> 22 <br> <%= subgroups%> 23 <input type="hidden" name="selectedStudyIds" value="${selectedStudyIds}" </div> 24 25 27 26 <% if (selectedStudies.size()>0) {%> 28 27 <table > 29 30 28 <tr> 31 29 <td></td> … … 36 34 <td><b> Sample Material </b></td> 37 35 <td><b> Duration </b></td> 36 <g:if test="${subgroups.size>0}"> <td><b> Subgroups </b></td> </g:if> 38 37 </tr> 39 <g:each in="${selectedStudies}" status="j" var="studyIns"> 38 39 <g:each in="${selectedStudies}" status="j" var="studyIns"> 40 40 <tr> 41 <td> <input type="checkbox" name="${studyIns.title}" id="${studyIns.title}" > </td>41 <td> <input type="checkbox" name="${studyIns.title}" id="${studyIns.title}" class="checkbox1${studyIns.id}"> </td> 42 42 <td> ${studyIns.title} </td> 43 44 </tr> 43 </tr> 44 45 46 45 47 <g:each in ="${studyIns.events}" var="events"> 46 48 <tr> 47 49 <td></td><td></td> 48 <td> <input type="checkbox" name="${ events.subject.name}" id="${events.subject.name}">49 ${events.subject.name} </td>50 <td> <input type="checkbox" name="${studyIns.id}.${events.subject.name}" id="${events.subject.name}" class="checkbox2${studyIns.id}" > 51 ${events.subject.name} </td> 50 52 <td> ${studyIns.samplingEvents} </td> 51 53 <td> ${studyIns.samplingEvents.samples.name}</td> 52 54 <td> ${studyIns.samplingEvents.samples.material}</td> 53 55 <td> ${events.getDurationString()}</td> 56 57 <g:if test="${subgroups.size>0}"> 58 <td> <select id="demo"> 59 <g:each in ="${subgroups}" var="p"> 60 <option value = "${p}"> "${p}" </option> 61 </g:each> 62 </select> </td> 63 </g:if> 54 64 </tr> 55 65 </g:each> 56 </g:each> 66 67 68 </g:each> 57 69 58 </table> 59 <%}%> 70 </table> 60 71 61 <% if (selectedStudies.size()==0) {%> 62 Please select studies to query samples. 72 73 74 <g:each in="${selectedStudies}" status="j" var="studyIns"> 75 <% def cb1 = '\'.checkbox1' + studyIns.id + '\'' %> 76 <% def cb2 = '\'.checkbox2' + studyIns.id + '\'' %> 77 <script> 78 $(${cb1}).click(function () { 79 if($(this).attr("checked")==true) 80 $(${cb2}).attr("checked", "checked"); 81 }); 82 $(${cb2}).click(function () { 83 if($(this).attr("checked")==false) 84 $(${cb1}).attr("checked", false); 85 }); 86 </script> 87 </g:each> 88 89 90 91 <%}%> 92 93 94 Infer subgroups: 95 <INPUT TYPE=submit name=submit Value="Subject Groups"> 96 <INPUT TYPE=submit name=submit Value="Event Groups"> 97 <INPUT TYPE=submit name=submit Value="Starting Time Groups"> 98 99 <% if (selectedStudies.size()==0) { %> 100 <br> Please select studies to query samples. 63 101 <% } %> 64 102 … … 67 105 <INPUT TYPE=submit name=submit Value=">> Execute and continue with biomarker selection"> 68 106 107 </g:form> 108 109 110 69 111 </body> 70 112 </html>
Note: See TracChangeset
for help on using the changeset viewer.