Changeset 1049

Show
Ignore:
Timestamp:
02-11-10 15:41:02 (3 years ago)
Author:
m.s.vanvliet@…
Message:

Pilot almost there...

Location:
trunk/grails-app
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/nmc/PilotController.groovy

    r1046 r1049  
    1818 
    1919class PilotController { 
     20         
     21        def authenticationService 
    2022         
    2123        static allowedMethods = [save: "POST", update: "POST", delete: "POST"] 
     
    5355           //For Pilot we do not ask for code, we generate it for the user 
    5456           studyInstance.code = params?.title?.encodeAsMD5() 
     57           studyInstance.owner = authenticationService.getLoggedInUser() 
    5558            
    5659           def extraparams = new LinkedHashMap(); 
     
    6871                   assayInstance.externalAssayID = assayInstance?.name?.encodeAsMD5() 
    6972                   studyInstance.addToAssays(assayInstance) 
    70                    assayInstance.save(flush: true)                  
    71                     
     73                   assayInstance.save(flush: true) 
     74                                    
    7275                   //flash.message = "${message(code: 'default.created.message', args: [message(code: 'study.label', default: 'Study'), ( studyInstance.title ? studyInstance.title : "" ) + " " + ( studyInstance.code ? studyInstance.code : "" )])}" 
    7376                    
     
    8083    
    8184   def show = { 
     85                            
    8286           def studyInstance = Study.get(params.id) 
    8387           if (!studyInstance) { 
     
    8690           } 
    8791           else { 
     92                    
     93                   //add all samples to the assay when not there yet! 
     94                   studyInstance.assays.each { assay -> 
     95                           if (assay.samples.size() <= 0){ 
     96                                   studyInstance.samples.each { sample -> 
     97                                           log.info("ADD THE DIRTY WAY!!!") 
     98                                           assay.addToSamples(sample) 
     99                                   } 
     100                                   assay.save() 
     101                           }                        
     102                   } 
     103                    
    88104                   [studyInstance: studyInstance] 
    89105           } 
  • trunk/grails-app/views/pilot/show.gsp

    r1046 r1049  
    44    <head> 
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    6         <meta name="layout" content="${layout}" /> 
     6        <meta name="layout" content="${layout}" />         
    77        <g:set var="entityName" value="${message(code: 'study.label', default: 'Study')}" /> 
    88        <title><g:message code="default.show.label" args="[entityName]" /></title> 
     
    2727                                Click on this assay to continue with the pilot. 
    2828                                        </g:if> 
    29                          
    30  
    3129                </p> 
     30                 
    3231                <table> 
    3332                    <tbody> 
     
    4544                                 
    4645                                <g:if test="${studyInstance.samples.size() == 0}"> 
    47                                         <g:link controller="importer" action="simpleWizard">Import Samples</g:link>                                      
     46                                                                        <g:link controller="importer" action="index" params="[redirectTo: 'http://localhost:8080/gscf/pilot/show/'+studyInstance.id]">Import Samples</g:link> 
    4847                                </g:if> 
    4948                                 
     
    5554                        </tr> 
    5655                         
    57                         <tr class="prop"> 
    58                             <td valign="top" class="name">Assays</td> 
    59  
    60                             <td valign="top" class="value"> 
    61                                                                 <g:each in="${studyInstance.assays.unique()}" var="assay"> 
    62                                                                         <g:link controller="assay" action="show" id="${assay.id}">${assay.name}</g:link><br /> 
    63                                                                 </g:each>                             
    64                             </td> 
    65  
    66                         </tr>  
    67                      
     56                        <g:if test="${studyInstance.samples.size() > 0}">                         
     57                                <tr class="prop"> 
     58                                    <td valign="top" class="name">Assays</td> 
     59         
     60                                    <td valign="top" class="value"> 
     61                                                                        <g:each in="${studyInstance.assays.unique()}" var="assay"> 
     62                                                                                <jumpbar:link 
     63                                                                linkDest="${createLink(action:'show', id:studyInstance.id)}" 
     64                                                                linkText='Go back to GSCF' 
     65                                                                frameSource="${assay.module.url}/assay/showByToken?id=${assay.externalAssayID}&sessionToken=${session.id}" 
     66                                                                pageTitle="Assay View in Module"> 
     67                                                                ${assay.name} 
     68                                                        </jumpbar:link><br /> 
     69                                                                        </g:each>                             
     70                                    </td>        
     71                                </tr>  
     72                        </g:if> 
     73                         
    6874                    </tbody> 
    6975                </table>