diff --git a/.gitignore b/.gitignore
index e56e36c4c3..81ea946088 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,7 +20,7 @@ tmp
version.jsp
update_client.sh
*.log
-apollo-config.groovy
+src/java/apollo-config.groovy
gwt-unitCache/**
web-app/WEB-INF/deploy/**
web-app/annotator/**
diff --git a/client/apollo/js/View/Track/AnnotTrack.js b/client/apollo/js/View/Track/AnnotTrack.js
index 8af96fa921..38f5d56263 100644
--- a/client/apollo/js/View/Track/AnnotTrack.js
+++ b/client/apollo/js/View/Track/AnnotTrack.js
@@ -419,6 +419,7 @@ define([
var user = JSON.parse(apolloMainPanel.getCurrentUser());
client.subscribe("/topic/AnnotationNotification/" + organism.id + "/" + sequence.id, dojo.hitch(track, 'annotationNotification'));
client.subscribe("/topic/AnnotationNotification/user/" + user.email, dojo.hitch(track, 'annotationNotification'));
+ localStorage.setItem('organism-id', organism.id);
});
console.log('connection established');
},
diff --git a/client/apollo/js/View/Track/SequenceTrack.js b/client/apollo/js/View/Track/SequenceTrack.js
index 006a9e4856..b0c1e1a9a1 100644
--- a/client/apollo/js/View/Track/SequenceTrack.js
+++ b/client/apollo/js/View/Track/SequenceTrack.js
@@ -1189,6 +1189,10 @@ function( declare,
alert("Input cannot be empty for " + type);
ok = false;
}
+ if (commentFieldValue.length == 0) {
+ alert("Please provide a justification for the sequence modification (" + type + ") in the 'Comment' field.");
+ ok = false;
+ }
if (ok) {
var input = inputField.value.toUpperCase();
if (type === "deletion_artifact") {
diff --git a/grails-app/services/org/bbop/apollo/ReportService.groovy b/grails-app/services/org/bbop/apollo/ReportService.groovy
index 70541a9632..9bfcc3bd24 100644
--- a/grails-app/services/org/bbop/apollo/ReportService.groovy
+++ b/grails-app/services/org/bbop/apollo/ReportService.groovy
@@ -156,7 +156,7 @@ class ReportService {
AnnotatorSummary generateAnnotatorSummary(User owner) {
AnnotatorSummary annotatorSummary = new AnnotatorSummary()
-
+
// get features created by the annotator
def geneCount = Gene.executeQuery("select count(distinct g) from Gene g join g.owners owner where owner = :owner", [owner: owner])[0]
def transposableElementCount = TransposableElement.executeQuery("select count(distinct g) from TransposableElement g join g.owners owner where owner = :owner", [owner: owner])[0]
diff --git a/grails-app/views/auth/login.gsp b/grails-app/views/auth/login.gsp
index 79014ffe73..9cea56914f 100644
--- a/grails-app/views/auth/login.gsp
+++ b/grails-app/views/auth/login.gsp
@@ -5,7 +5,7 @@
Login
-
+
${flash.message}
diff --git a/grails-app/views/google_analytics.gsp b/grails-app/views/google_analytics.gsp
index 74e578e3c1..dc1cf3450e 100644
--- a/grails-app/views/google_analytics.gsp
+++ b/grails-app/views/google_analytics.gsp
@@ -5,26 +5,23 @@
Time: 4:05 PM
--%>
-
+
-
-
diff --git a/grails-app/views/login/doLogin.gsp b/grails-app/views/login/doLogin.gsp
index 518015305a..4eb325f3bb 100644
--- a/grails-app/views/login/doLogin.gsp
+++ b/grails-app/views/login/doLogin.gsp
@@ -6,29 +6,23 @@
--%>
<%@ page contentType="text/html;charset=UTF-8" %>
+
-
+
+
+
Login
-
-
+
+-->
diff --git a/package.json b/package.json
index 2a10052c57..8e1b43f2e9 100644
--- a/package.json
+++ b/package.json
@@ -9,6 +9,7 @@
"author": "Nathan Dunn",
"license": "SEE LICENSE IN LICENSE.md",
"dependencies": {
+ "gradle": "^1.0.9",
"jquery": "^1.7.2",
"jqueryui": "^1.8.24"
},
diff --git a/src/gwt/org/bbop/apollo/gwt/client/LoginDialog.java b/src/gwt/org/bbop/apollo/gwt/client/LoginDialog.java
index c58bd7a095..0cab293b31 100644
--- a/src/gwt/org/bbop/apollo/gwt/client/LoginDialog.java
+++ b/src/gwt/org/bbop/apollo/gwt/client/LoginDialog.java
@@ -21,6 +21,7 @@
import org.gwtbootstrap3.client.ui.TextBox;
import org.gwtbootstrap3.client.ui.constants.*;
import org.bbop.apollo.gwt.client.rest.UserRestService;
+import com.google.gwt.dom.client.Style;
public class LoginDialog extends DialogBox {
private static final Binder binder = GWT.create(Binder.class);
@@ -53,6 +54,7 @@ interface Binder extends UiBinder
{
public LoginDialog() {
getElement().setId("loginDialogId");
+ getElement().getStyle().setWidth(500, Style.Unit.PX);
setText("Login");
setAnimationEnabled(true);
// Enable glass background.
@@ -74,7 +76,7 @@ public void setError(String errorMessage){
errorText.setText(errorMessage);
errorHtml.setVisible(true);
}
-
+
public void clearErrors(){
errorText.setText("");
errorHtml.setVisible(false);
diff --git a/src/templates/war/web.xml b/src/templates/war/web.xml
index 612a408572..d919507715 100644
--- a/src/templates/war/web.xml
+++ b/src/templates/war/web.xml
@@ -76,7 +76,9 @@
- 960
+
+
+ 30
diff --git a/tools/data/add_features_from_gff3_to_annotations.pl b/tools/data/add_features_from_gff3_to_annotations.pl
index 58fe93242f..1d2fa1196f 100755
--- a/tools/data/add_features_from_gff3_to_annotations.pl
+++ b/tools/data/add_features_from_gff3_to_annotations.pl
@@ -4,7 +4,8 @@
use warnings;
use FindBin qw($RealBin);
-use lib "$RealBin/../../jbrowse/src/perl5";
+#use lib "$RealBin/../../jbrowse/src/perl5";
+use lib "../../src/perl5";
use JBlibs;
use File::Basename;
diff --git a/web-app/css/Annotator.css b/web-app/css/Annotator.css
index 4be9b6323e..8ec1bded27 100644
--- a/web-app/css/Annotator.css
+++ b/web-app/css/Annotator.css
@@ -1,6 +1,5 @@
/** Add css rules here for your application. */
-
/** Example rules used by the template application (remove for your app) */
h1 {
font-size: 2em;
diff --git a/web-app/css/chado.css b/web-app/css/chado.css
index 4baa35fad7..29b733bd84 100644
--- a/web-app/css/chado.css
+++ b/web-app/css/chado.css
@@ -1,4 +1,4 @@
-@CHARSET "UTF-8";
+@charset "UTF-8";
table {
border-width: 1px;
diff --git a/web-app/css/login.css b/web-app/css/login.css
index f2ad1bdbab..c84dc1e7d7 100644
--- a/web-app/css/login.css
+++ b/web-app/css/login.css
@@ -1,12 +1,12 @@
-@CHARSET "UTF-8";
+@charset "UTF-8";
.user_login {
/* width:30%; */
- margin:5px;
+ margin: 5px;
}
.fieldname {
- margin-right:5px;
+ margin-right: 5px;
font-size: 1.3em;
}
@@ -16,7 +16,7 @@
}
.button_login {
- text-align:center;
- margin-top:10px;
+ text-align: center;
+ margin-top: 10px;
width: 100%;
-}
\ No newline at end of file
+}
diff --git a/web-app/css/search_sequence.css b/web-app/css/search_sequence.css
index d57580c6b9..0a0ca8e1d3 100644
--- a/web-app/css/search_sequence.css
+++ b/web-app/css/search_sequence.css
@@ -1,4 +1,4 @@
-@CHARSET "UTF-8";
+@charset "UTF-8";
.search_sequence_label {
font-size: 1.5em;
@@ -75,4 +75,4 @@
.search_sequence {
font-size: 12px;
-}
\ No newline at end of file
+}
diff --git a/web-app/css/ui-layout.css b/web-app/css/ui-layout.css
index a53727b9a4..9fd96d3470 100644
--- a/web-app/css/ui-layout.css
+++ b/web-app/css/ui-layout.css
@@ -1,4 +1,3 @@
-
/**
UI.Layout CSS
*************************************/
@@ -12,12 +11,12 @@
overflow: auto;
}
-.ui-splitbar{
- display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
- display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
- display: -ms-flexbox; /* TWEENER - IE 10 */
- display: -webkit-flex; /* NEW - Chrome */
- display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
+.ui-splitbar {
+ display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
+ display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
+ display: -ms-flexbox; /* TWEENER - IE 10 */
+ display: -webkit-flex; /* NEW - Chrome */
+ display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
-webkit-justify-content: center;
justify-content: center;
@@ -27,15 +26,17 @@
z-index: 1010;
}
-.ui-layout-row > .ui-splitbar{
- height: 8px; width: 100%;
+.ui-layout-row > .ui-splitbar {
+ height: 8px;
+ width: 100%;
cursor: row-resize;
text-align: center;
justify-content: center;
align-items: center;
}
-.ui-layout-column > .ui-splitbar{
- width: 8px; height: 100%;
+.ui-layout-column > .ui-splitbar {
+ width: 8px;
+ height: 100%;
cursor: col-resize;
-webkit-flex-direction: column;
flex-direction: column;
@@ -46,4 +47,4 @@
color: #fff;
cursor: pointer;
font-size: 9px;
-}
\ No newline at end of file
+}