Skip to content

Commit

Permalink
fixes #1727 (#1728)
Browse files Browse the repository at this point in the history
* fixes #1727

* added a title

* added a date created filter
  • Loading branch information
nathandunn committed Aug 17, 2017
1 parent 0a9f1a9 commit 8aa1bac
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 11 deletions.
8 changes: 8 additions & 0 deletions grails-app/assets/stylesheets/main.css
Original file line number Diff line number Diff line change
Expand Up @@ -495,10 +495,18 @@ th.sortable a {

th.asc a {
background-image: url(../images/skin/sorted_asc.gif);
background-color: lightcoral;
border-radius: 10px;
background-position-x: 5px;
text-indent: 15px;
}

th.desc a {
background-image: url(../images/skin/sorted_desc.gif);
background-color: lightblue;
border-radius: 10px;
background-position-x: 5px;
text-indent: 15px;
}

.odd {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,9 +110,13 @@ class FeatureEventController {
}
}
}
} else if (params.sort == "lastUpdated") {
}
else if (params.sort == "lastUpdated") {
order('lastUpdated', params.order)
}
else if (params.sort == "dateCreated") {
order('dateCreated', params.order)
}

if (params.ownerName && params.ownerName != "null") {
owners {
Expand Down Expand Up @@ -161,6 +165,28 @@ class FeatureEventController {
log.debug "beforeDate ${params.beforeDate}"


if (params.dateCreatedAfterDate) {
Calendar calendar = GregorianCalendar.getInstance()
calendar.setTime(params.dateCreatedAfterDate)
calendar.set(Calendar.HOUR,0)
calendar.set(Calendar.MINUTE,0)
calendar.set(Calendar.SECOND,0)
gte('dateCreated', calendar.getTime())
}
if (params.dateCreatedBeforeDate) {
Date dateCreatedBeforeDate = params.dateCreatedBeforeDate
// set the before date to the very end of day
Calendar calendar = GregorianCalendar.getInstance()
calendar.setTime(params.dateCreatedBeforeDate)
calendar.set(Calendar.HOUR,23)
calendar.set(Calendar.MINUTE,59)
calendar.set(Calendar.SECOND,59)
lte('dateCreated', calendar.getTime())
}
log.debug "dateCreatedAfterDateDate ${params.dateCreatedAfterDateDate}"
log.debug "dateCreatedBeforeDate ${params.dateCreatedBeforeDate}"


'in'('class', requestHandlingService.viewableAnnotationList)
}

Expand All @@ -175,8 +201,10 @@ class FeatureEventController {
Date veryOldDate = today.minus(20 * 365) // 20 years back
Date beforeDate = params.beforeDate ?: today
Date afterDate = params.afterDate ?: veryOldDate
Date dateCreatedBeforeDate = params.dateCreatedBeforeDate ?: today
Date dateCreatedAfterDate = params.dateCreatedAfterDate ?: veryOldDate

render view: "report", model: [afterDate: afterDate, beforeDate: beforeDate, sequenceName: params.sequenceName, features: list, featureCount: list.totalCount, organismName: params.organismName, featureTypes: featureTypes, featureType: params.featureType, ownerName: params.ownerName, filters: filters, sort: params.sort]
render view: "report", model: [dateCreatedAfterDate: dateCreatedAfterDate, dateCreatedBeforeDate: dateCreatedBeforeDate,afterDate: afterDate, beforeDate: beforeDate, sequenceName: params.sequenceName, features: list, featureCount: list.totalCount, organismName: params.organismName, featureTypes: featureTypes, featureType: params.featureType, ownerName: params.ownerName, filters: filters, sort: params.sort]
}

def index(Integer max) {
Expand Down
23 changes: 22 additions & 1 deletion grails-app/views/featureEvent/report.gsp
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@
</div>
</div>
<div class="row col-sm-12">
<div class="col-sm-2">
<strong>Last Updated</strong>
</div>
<div class="col-sm-4 form-group">
After:
<g:datePicker name="afterDate" value="${afterDate}" precision="day" relativeYears="[-20..20]"/>
Expand All @@ -59,6 +62,19 @@
<g:datePicker name="beforeDate" value="${beforeDate}" precision="day" relativeYears="[-20..20]"/>
</div>
</div>
<div class="row col-sm-12">
<div class="col-sm-2">
<strong>Date Created</strong>
</div>
<div class="col-sm-4 form-group">
After:
<g:datePicker name="dateCreatedAfterDate" value="${dateCreatedAfterDate}" precision="day" relativeYears="[-20..20]"/>
</div>
<div class="col-sm-4 form-group">
Before:
<g:datePicker name="dateCreatedBeforeDate" value="${dateCreatedBeforeDate}" precision="day" relativeYears="[-20..20]"/>
</div>
</div>

<div class="row col-sm-12">
<div class="form-group col-sm-4">
Expand All @@ -78,7 +94,8 @@
<table>
<thead>
<tr>
<g:sortableColumn property="lastUpdated" title="Last updated" params="${filters}"/>
<g:sortableColumn property="lastUpdated" title="Last update" params="${filters}"/>
<g:sortableColumn property="dateCreated" title="Created" params="${filters}"/>
<g:sortableColumn property="organism" title="Organism" params="${filters}"/>
<g:sortableColumn property="sequencename" title="Sequence name" params="${filters}"/>
<g:sortableColumn property="name" title="Name" params="${filters}"/>
Expand All @@ -92,6 +109,10 @@
<tr class="${(i % 2) == 0 ? 'even' : 'odd'}">
<td>
<g:formatDate format="dd-MMM-yy HH:mm (E z)" date="${feature.lastUpdated}"/>
(v ${feature.version})
</td>
<td>
<g:formatDate format="dd-MMM-yy HH:mm (E z)" date="${feature.dateCreated}"/>
</td>
<td>
<g:link target="_blank" controller="annotator" action="loadLink"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import com.google.gwt.json.client.JSONArray;
import com.google.gwt.json.client.JSONObject;
import com.google.gwt.user.client.Window;

import java.util.ArrayList;
import java.util.List;
Expand All @@ -19,26 +18,26 @@ public static SequenceInfo convertFromJson(JSONObject object) {
sequenceInfo.setEnd((int) object.get("end").isNumber().doubleValue());
sequenceInfo.setLength((int) object.get("length").isNumber().doubleValue());
sequenceInfo.setSelected(object.get("selected") != null && object.get("selected").isBoolean().booleanValue());
if(object.get("count") != null) sequenceInfo.setCount((int) object.get("count").isNumber().doubleValue());
if (object.get("count") != null) sequenceInfo.setCount((int) object.get("count").isNumber().doubleValue());
sequenceInfo.setDefault(object.get("aDefault") != null && object.get("aDefault").isBoolean().booleanValue());


// set the preferences if they are there
if(object.containsKey("startBp")){
sequenceInfo.setStartBp(object.get("startBp").isNumber()!=null ? object.get("startBp").isNumber().doubleValue() : null );
if (object.containsKey("startBp")) {
sequenceInfo.setStartBp(object.get("startBp").isNumber() != null ? object.get("startBp").isNumber().doubleValue() : null);
}
if(object.containsKey("endBp")){
sequenceInfo.setEndBp(object.get("endBp").isNumber()!=null ? object.get("endBp").isNumber().doubleValue() : null );
if (object.containsKey("endBp")) {
sequenceInfo.setEndBp(object.get("endBp").isNumber() != null ? object.get("endBp").isNumber().doubleValue() : null);
}

return sequenceInfo ;
return sequenceInfo;
}

public static List<SequenceInfo> convertFromJsonArray(JSONArray sequenceList) {
List<SequenceInfo> sequenceInfoArrayList = new ArrayList<>();


for(int i = 0 ; sequenceList!=null && i < sequenceList.size() ; i++){
for (int i = 0; sequenceList != null && i < sequenceList.size(); i++) {
sequenceInfoArrayList.add(convertFromJson(sequenceList.get(i).isObject()));
}

Expand Down

0 comments on commit 8aa1bac

Please sign in to comment.