Skip to content
This repository was archived by the owner on Jun 7, 2024. It is now read-only.

Commit 277202e

Browse files
committed
Pre-submission bugfixes
1 parent d9244bc commit 277202e

File tree

26 files changed

+454
-309
lines changed

26 files changed

+454
-309
lines changed

GeneTracker/GeneTracker.iml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,16 @@
4949
<orderEntry type="module" module-name="OpenLabFrontend-grailsPlugins" />
5050
<orderEntry type="library" scope="PROVIDED" name="grails-2.1.1" level="application" />
5151
<orderEntry type="library" scope="PROVIDED" name="grails-2.2.0" level="application" />
52+
<orderEntry type="library" scope="PROVIDED" name="grails-2.2.2" level="application" />
5253
<orderEntry type="module-library" exported="">
5354
<library name="Grails User Library (GeneTracker)">
5455
<CLASSES>
56+
<root url="file://$MODULE_DIR$/lib" />
5557
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.springframework.security/spring-security-web/jars/spring-security-web-3.0.7.RELEASE.jar!/" />
5658
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.springframework.security/spring-security-core/jars/spring-security-core-3.0.7.RELEASE.jar!/" />
5759
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.springframework.webflow/spring-js/jars/spring-js-2.0.8.RELEASE.jar!/" />
5860
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.springframework.webflow/spring-binding/jars/spring-binding-2.0.8.RELEASE.jar!/" />
5961
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.springframework.webflow/spring-webflow/jars/spring-webflow-2.0.8.RELEASE.jar!/" />
60-
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.liquibase/liquibase-core/jars/liquibase-core-2.0.5.jar!/" />
6162
<root url="jar://$USER_HOME$/.grails/ivy-cache/jboss/javassist/jars/javassist-3.7.ga.jar!/" />
6263
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.jasig.cas.client/cas-client-core/jars/cas-client-core-3.1.12.jar!/" />
6364
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.springframework.security/spring-security-cas-client/jars/spring-security-cas-client-3.0.7.RELEASE.jar!/" />
@@ -76,7 +77,12 @@
7677
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.cloudfoundry/cloudfoundry-client-lib/jars/cloudfoundry-client-lib-0.7.5.jar!/" />
7778
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.cloudfoundry/cloudfoundry-caldecott-lib/jars/cloudfoundry-caldecott-lib-0.1.1.jar!/" />
7879
<root url="jar://$USER_HOME$/.grails/ivy-cache/mysql/mysql-connector-java/jars/mysql-connector-java-5.1.16.jar!/" />
79-
<root url="file://$MODULE_DIR$/lib" />
80+
<root url="jar://$USER_HOME$/.grails/ivy-cache/backport-util-concurrent/backport-util-concurrent/jars/backport-util-concurrent-3.0.jar!/" />
81+
<root url="jar://$USER_HOME$/.grails/ivy-cache/net.sourceforge.wurfl/wurfl/jars/wurfl-1.2.jar!/" />
82+
<root url="jar://$USER_HOME$/.grails/ivy-cache/commons-logging/commons-logging/jars/commons-logging-1.1.1.jar!/" />
83+
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.springframework.mobile/spring-mobile-device/jars/spring-mobile-device-1.0.0.M3.jar!/" />
84+
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.gmock/gmock/jars/gmock-0.8.2.jar!/" />
85+
<root url="jar://$USER_HOME$/.grails/ivy-cache/org.eclipse.jdt.core.compiler/ecj/jars/ecj-3.7.2.jar!/" />
8086
</CLASSES>
8187
<JAVADOC />
8288
<SOURCES />

GeneTracker/application.properties

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#Grails Metadata file
2-
#Fri Mar 22 11:05:51 CET 2013
3-
app.grails.version=2.2.1
2+
#Wed May 08 10:47:38 CEST 2013
3+
app.grails.version=2.2.2
44
app.name=GeneTracker
5-
plugins.hibernate=2.2.1
6-
plugins.tomcat=2.2.1
5+
plugins.hibernate=2.2.2
6+
plugins.tomcat=2.2.2

GeneTracker/grails-app/modules/org/openlab/module/menu/MasterDataMenuModule.groovy

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,33 @@
1-
/*
2-
* Copyright (C) 2013
3-
* Center for Excellence in Nanomedicine (NanoCAN)
4-
* Molecular Oncology
5-
* University of Southern Denmark
6-
* ###############################################
7-
* Written by: Markus List
8-
* Contact: mlist'at'health'.'sdu'.'dk
9-
* Web: http://www.nanocan.org
10-
* ###########################################################################
11-
*
12-
* This file is part of OpenLabFramework.
13-
*
14-
* OpenLabFramework is free software: you can redistribute it and/or modify
15-
* it under the terms of the GNU General Public License as published by
16-
* the Free Software Foundation, either version 3 of the License, or
17-
* (at your option) any later version.
18-
*
19-
* This program is distributed in the hope that it will be useful,
20-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
21-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22-
* GNU General Public License for more details.
23-
*
24-
* You should have received a copy of the GNU General Public License
25-
* along with this program. It can be found at the root of the project page.
26-
* If not, see <http://www.gnu.org/licenses/>.
27-
*
28-
* ############################################################################
29-
*/
30-
package org.openlab.module.menu
1+
/*
2+
* Copyright (C) 2013
3+
* Center for Excellence in Nanomedicine (NanoCAN)
4+
* Molecular Oncology
5+
* University of Southern Denmark
6+
* ###############################################
7+
* Written by: Markus List
8+
* Contact: mlist'at'health'.'sdu'.'dk
9+
* Web: http://www.nanocan.org
10+
* ###########################################################################
11+
*
12+
* This file is part of OpenLabFramework.
13+
*
14+
* OpenLabFramework is free software: you can redistribute it and/or modify
15+
* it under the terms of the GNU General Public License as published by
16+
* the Free Software Foundation, either version 3 of the License, or
17+
* (at your option) any later version.
18+
*
19+
* This program is distributed in the hope that it will be useful,
20+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
21+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22+
* GNU General Public License for more details.
23+
*
24+
* You should have received a copy of the GNU General Public License
25+
* along with this program. It can be found at the root of the project page.
26+
* If not, see <http://www.gnu.org/licenses/>.
27+
*
28+
* ############################################################################
29+
*/
30+
package org.openlab.module.menu
3131

3232
import org.openlab.module.*;
3333
import groovy.xml.MarkupBuilder
@@ -53,7 +53,7 @@ class MasterDataMenuModule implements MenuModule{
5353
menuitem(controller: 'origin', action: 'list', label: 'Origins')
5454
menuitem(controller: 'cellLine', action: 'list', label: 'Cell Lines')
5555
menuitem(controller: 'cultureMedia', action: 'list', label: 'Culture Media')
56-
menuitem(controller: 'antibiotics', action: 'list', label: 'Anitbiotics')
56+
menuitem(controller: 'antibiotics', action: 'list', label: 'Antibiotics')
5757
menuitem(controller: 'vector', action: 'list', label: 'Vectors')
5858
}
5959
}
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
/*
2+
* Copyright (C) 2013
3+
* Center for Excellence in Nanomedicine (NanoCAN)
4+
* Molecular Oncology
5+
* University of Southern Denmark
6+
* ###############################################
7+
* Written by: Markus List
8+
* Contact: mlist'at'health'.'sdu'.'dk
9+
* Web: http://www.nanocan.org
10+
* ###########################################################################
11+
*
12+
* This file is part of OpenLabFramework.
13+
*
14+
* OpenLabFramework is free software: you can redistribute it and/or modify
15+
* it under the terms of the GNU General Public License as published by
16+
* the Free Software Foundation, either version 3 of the License, or
17+
* (at your option) any later version.
18+
*
19+
* This program is distributed in the hope that it will be useful,
20+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
21+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22+
* GNU General Public License for more details.
23+
*
24+
* You should have received a copy of the GNU General Public License
25+
* along with this program. It can be found at the root of the project page.
26+
* If not, see <http://www.gnu.org/licenses/>.
27+
*
28+
* ############################################################################
29+
*/
30+
package org.openlab.module.operations
31+
32+
import org.openlab.genetracker.Gene
33+
import org.openlab.module.Module
34+
import org.openlab.genetracker.Recombinant
35+
36+
class RecombinantOperationsModule implements Module{
37+
38+
def getPluginName() {
39+
"gene-tracker"
40+
}
41+
42+
def getTemplateForDomainClass(def domainClass)
43+
{
44+
if(domainClass == "recombinant") return "recombinantOperations"
45+
}
46+
47+
@Override
48+
def getMobileTemplateForDomainClass(Object domainClass) {
49+
return null
50+
}
51+
52+
def isInterestedIn(def domainClass, def type)
53+
{
54+
if((type == "operations") && (domainClass == "recombinant")) return true
55+
return false
56+
}
57+
58+
def getModelForDomainClass(def domainClass, def id)
59+
{
60+
if(domainClass == "recombinant")
61+
{
62+
def recombinant = Recombinant.get(id)
63+
[recombinantInstance: recombinant]
64+
}
65+
}
66+
67+
@Override
68+
def isMobile() {
69+
return false
70+
}
71+
}

GeneTracker/grails-app/views/cellLineData/create.gsp

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,14 @@
4848
<label for="firstRecombinant"><g:message code="cellLineData.firstRecombinant.label" default="First Vector Combination" /></label>
4949
</td>
5050
<td valign="top" class="value ${hasErrors(bean: cellLineDataInstance, field: 'firstRecombinant', 'errors')}">
51-
<g:select noSelection="['':'']" onChange="${remoteFunction(action: 'updateFirstVector', update: 'firstVectorSpan', params:'\'firstGene=\'+this.value')}" name="firstRecombinantGene.id" from="${org.openlab.genetracker.Gene.list(sort:'name')}" optionKey="id" value="${cellLineDataInstance?.firstRecombinant?.gene?.id}" />
52-
<span id="firstVectorSpan">${cellLineDataInstance?.firstRecombinant?.vector?:"Select a gene"}</span>
51+
<g:if test="${cellLineDataInstance.firstRecombinant}">
52+
<g:hiddenField name="firstRecombinant.id" value="${cellLineDataInstance.firstRecombinant.id}"/>
53+
${cellLineDataInstance.firstRecombinant}
54+
</g:if>
55+
<g:else>
56+
<g:select noSelection="['':'']" onChange="${remoteFunction(action: 'updateFirstVector', update: 'firstVectorSpan', params:'\'firstGene=\'+this.value')}" name="firstRecombinantGene.id" from="${org.openlab.genetracker.Gene.list(sort:'name')}" optionKey="id" />
57+
<span id="firstVectorSpan">${cellLineDataInstance?.firstRecombinant?.vector?:"Select a gene"}</span>
58+
</g:else>
5359
</td>
5460
</tr>
5561

@@ -58,8 +64,14 @@
5864
<label for="secondRecombinant"><g:message code="cellLineData.secondRecombinant.label" default="Second Vector Combination" /></label>
5965
</td>
6066
<td valign="top" class="value ${hasErrors(bean: cellLineDataInstance, field: 'secondRecombinant', 'errors')}">
61-
<g:select noSelection="['':'']" onChange="${remoteFunction(action: 'updateSecondVector', update: 'secondVectorSpan', params:'\'secondGene=\'+this.value')}" name="firstRecombinantGene.id" from="${org.openlab.genetracker.Gene.list(sort:'name')}" optionKey="id" value="${cellLineDataInstance?.secondRecombinant?.gene?.id}" />
62-
<span id="secondVectorSpan">${cellLineDataInstance?.secondRecombinant?.vector?:"Select a gene"}</span>
67+
<g:if test="${cellLineDataInstance.secondRecombinant}">
68+
<g:hiddenField name="firstRecombinant.id" value="${cellLineDataInstance.secondRecombinant.id}"/>
69+
${cellLineDataInstance.secondRecombinant}
70+
</g:if>
71+
<g:else>
72+
<g:select noSelection="['':'']" onChange="${remoteFunction(action: 'updateSecondVector', update: 'secondVectorSpan', params:'\'secondGene=\'+this.value')}" name="firstRecombinantGene.id" from="${org.openlab.genetracker.Gene.list(sort:'name')}" optionKey="id" value="${cellLineDataInstance?.secondRecombinant?.gene?.id}" />
73+
<span id="secondVectorSpan">${cellLineDataInstance?.secondRecombinant?.vector?:"Select a gene"}</span>
74+
</g:else>
6375
</td>
6476
</tr>
6577

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
2+
<g:if test="${recombinantInstance.vector.type=="Integration (First)"}">
3+
<li>
4+
<g:remoteLink action="create" params="${['firstRecombinant.id': recombinantInstance.id, 'bodyOnly': true]}" controller="cellLineData" update="[success: 'body', failure:'body']">
5+
<img src=${createLinkTo(dir:'images/skin',file:'olf_m.png')} />
6+
Create new cell line recombinant
7+
</g:remoteLink>
8+
</li>
9+
</g:if>
10+
11+
<g:if test="${recombinantInstance.vector.type=="Integration (Second)"}">
12+
<li>
13+
<g:remoteLink action="create" params="${['secondRecombinant.id': recombinantInstance.id, 'bodyOnly': true]}" controller="cellLineData" update="[success: 'body', failure:'body']">
14+
<img src=${createLinkTo(dir:'images/skin',file:'olf_m.png')} />
15+
Create new cell line recombinant
16+
</g:remoteLink>
17+
</li>
18+
</g:if>
19+

GeneTracker/grails-app/views/tabs/_geneVectorTab.gsp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<th>Notes</th>
1313
<th>Last Update</th>
1414
<th>&nbsp;</th>
15+
<th>&nbsp;</th>
1516
</tr>
1617
</thead>
1718
<tbody>
@@ -36,6 +37,17 @@
3637
<g:remoteLink controller="recombinant" action="show" params="[bodyOnly: true]" id="${geneVectorInstance.id}" update="[success:'body',failure:'body']">Show</g:remoteLink>
3738
</span>
3839
</td>
40+
<g:if test="${geneVectorInstance.vector.type=='Integration (First)'}"><td class="actionButtons">
41+
<span class="actionButton">
42+
<g:remoteLink controller="cellLineData" action="create" params="${['firstRecombinant.id': geneVectorInstance.id, 'bodyOnly': true]}" update="[success:'body',failure:'body']">Add cell line recombinant</g:remoteLink>
43+
</span>
44+
</g:if>
45+
<g:if test="${geneVectorInstance.vector.type=='Integration (Second)'}"><td class="actionButtons">
46+
<span class="actionButton">
47+
<g:remoteLink controller="cellLineData" action="create" params="${['secondRecombinant.id': geneVectorInstance.id, 'bodyOnly': true]}" update="[success:'body',failure:'body']">Add cell line recombinant</g:remoteLink>
48+
</span>
49+
</g:if>
50+
</td>
3951
</tr>
4052
</g:each>
4153
</tbody>

0 commit comments

Comments
 (0)