Skip to content
Snippets Groups Projects
Commit 9882de50 authored by Tor-Einar Skog's avatar Tor-Einar Skog
Browse files

Fixed reverse sorting of observations and messages

parent 2999c341
No related branches found
No related tags found
No related merge requests found
...@@ -95,14 +95,14 @@ function filterObservations(){ ...@@ -95,14 +95,14 @@ function filterObservations(){
*/ */
function renderObservationMessages() function renderObservationMessages()
{ {
// TODO: Sort in reverse chronological order // Sort in reverse chronological order
filteredObservations.sort(sortObservationMessages).reverse();
var messagesLeftColTBody = document.getElementById("messagesLeftColTBody"); var messagesLeftColTBody = document.getElementById("messagesLeftColTBody");
messagesLeftColTBody.innerHTML = ""; messagesLeftColTBody.innerHTML = "";
for(var i=0;i<Math.min(3,filteredObservations.length);i++) // Max 4 latest messages for(var i=0;i<Math.min(3,filteredObservations.length);i++) // Max 4 latest messages
{ {
var observation = filteredObservations[i]; var observation = filteredObservations[i];
messagesLeftColTBody.innerHTML += '<tr>\n<td class="dateCell">' + getStandardFormattedDate(observation["timeOfObservation"]) + '</td><td><a href="/observations/' + observation["observationId"] + '">' + observation["observationHeading"] + '</a></td>\n</tr>'; messagesLeftColTBody.innerHTML += '<tr>\n<td class="dateCell">' + getStandardFormattedDate(observation["timeOfObservation"]) + '</td><td><a href="/observations/' + observation["observationId"] + '">' + observation["observationHeading"] + '</a></td>\n</tr>';
} }
} }
...@@ -127,6 +127,9 @@ function cacheMessages() ...@@ -127,6 +127,9 @@ function cacheMessages()
*/ */
function renderMessages() function renderMessages()
{ {
// Sorting in reverse chronological order
filteredMessages.sort(sortMessages).reverse();
var messagesRightColTBody = document.getElementById("messagesRightColTBody"); var messagesRightColTBody = document.getElementById("messagesRightColTBody");
messagesRightColTBody.innerHTML = ""; messagesRightColTBody.innerHTML = "";
...@@ -444,6 +447,10 @@ var sortForecastSummaries = function(a,b){ ...@@ -444,6 +447,10 @@ var sortForecastSummaries = function(a,b){
return 1; return 1;
} }
/** /**
* Returns the localized status message * Returns the localized status message
* @param warningStatus * @param warningStatus
......
...@@ -255,4 +255,34 @@ function getLocalizedOrganismName(organism) ...@@ -255,4 +255,34 @@ function getLocalizedOrganismName(organism)
function capitalizeFirstLetter(string) { function capitalizeFirstLetter(string) {
return string && string.charAt(0).toUpperCase() + string.slice(1); return string && string.charAt(0).toUpperCase() + string.slice(1);
}
var sortMessages = function(a,b)
{
var momentA = moment(a.datePub);
var momentB = moment(b.datePub);
if(momentA.isBefore(momentB))
{
return -1;
}
if(momentA.isSame(momentB))
{
return 0;
};
return 1;
}
var sortObservationMessages = function(a,b)
{
var momentA = moment(a.timeOfObservation);
var momentB = moment(b.timeOfObservation);
if(momentA.isBefore(momentB))
{
return -1;
}
if(momentA.isSame(momentB))
{
return 0;
};
return 1;
} }
\ No newline at end of file
...@@ -49,6 +49,7 @@ ...@@ -49,6 +49,7 @@
$(document).ready(function() { $(document).ready(function() {
$.getJSON("http://" + settings.vipslogicServerName + "/rest/observation/list/" + settings.vipsOrganizationId, function( json ) { $.getJSON("http://" + settings.vipslogicServerName + "/rest/observation/list/" + settings.vipsOrganizationId, function( json ) {
allObservations = json; allObservations = json;
allObservations.sort(sortObservationMessages).reverse();
var tableHTML = ""; var tableHTML = "";
for(var i in allObservations){ for(var i in allObservations){
var observation = allObservations[i]; var observation = allObservations[i];
......
...@@ -58,11 +58,13 @@ ...@@ -58,11 +58,13 @@
{% endblock %} {% endblock %}
{% block extendJS%} {% block extendJS%}
<script src="{% static "js/3rdparty/chosen.jquery.min.js" %}"></script> <script src="{% static "js/3rdparty/chosen.jquery.min.js" %}"></script>
<script type="text/javascript" src="{% static "js/3rdparty/moment.min.js" %}"></script>
<script src="{% static "js/util.js" %}"></script>
{% endblock %} {% endblock %}
{% block customJS%} {% block customJS%}
<script type="text/javascript"> <script type="text/javascript">
var messageList = [ var messageList = [
{% for message in messages reversed %} {% for message in messages %}
{ {
datePub:"{{ message.date_pub | date:"Y-m-d"}}", datePub:"{{ message.date_pub | date:"Y-m-d"}}",
heading:"{{ message.heading | escapejs }}", heading:"{{ message.heading | escapejs }}",
...@@ -84,6 +86,9 @@ ...@@ -84,6 +86,9 @@
{ {
var messageListEl = document.getElementById("messageListEl"); var messageListEl = document.getElementById("messageListEl");
var HTML = ""; var HTML = "";
messageListSubset.sort(sortMessages).reverse();
for(var i in messageListSubset) for(var i in messageListSubset)
{ {
var listItem = messageListSubset[i]; var listItem = messageListSubset[i];
......
...@@ -39,7 +39,10 @@ def index(request): ...@@ -39,7 +39,10 @@ def index(request):
) )
else: else:
messages = Message.get_messages(translation.get_language()) messages = Message.get_messages(translation.get_language())
# Sort the messages
crops = Organism.get_all_crops() crops = Organism.get_all_crops()
context = { context = {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment