From 69dd5ce3fdc53d35da12837ac67451c159546b97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kjetil=20=C3=98rbekk?= Date: Sat, 4 Sep 2010 02:04:34 -0400 Subject: Improve ordering on the quote page. By default, order by timestamp (= quote submit time). Remove ordering by id. --- html/quotes.jsp | 10 +++++----- src/lq/Doubles.java | 15 +++++++++++++++ src/lq/QuoteUtil.java | 11 +++++++++++ 3 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 src/lq/Doubles.java diff --git a/html/quotes.jsp b/html/quotes.jsp index 6177673..9571430 100644 --- a/html/quotes.jsp +++ b/html/quotes.jsp @@ -26,7 +26,7 @@ hr { Quotes fra #linux.no på freenode Klikk her for å legge til en quote - Sortér etter dato | score | id + Sortér etter quote-dato | score | timestamp
@@ -52,15 +52,15 @@ String order = request.getParameter("order"); List quotes; if (order == null) { - quotes = lq.QuoteUtil.getQuotesOrderedByIdDesc(); -} else if(order.equals("id")) { - quotes = lq.QuoteUtil.getQuotesOrderedByIdDesc(); + quotes = lq.QuoteUtil.getQuotesOrderedByTimestampDesc(); +} else if(order.equals("timestamp")) { + quotes = lq.QuoteUtil.getQuotesOrderedByTimestampDesc(); } else if(order.equals("score")) { quotes = lq.QuoteUtil.getQuotesOrderedByScoreDesc(); } else if(order.equals("date")) { quotes = lq.QuoteUtil.getQuotesOrderedByDateDesc(); } else { - quotes = lq.QuoteUtil.getQuotesOrderedByIdDesc(); + quotes = lq.QuoteUtil.getQuotesOrderedByTimestampDesc(); } lq.Printer printer = new lq.Printer(out); diff --git a/src/lq/Doubles.java b/src/lq/Doubles.java new file mode 100644 index 0000000..551e65a --- /dev/null +++ b/src/lq/Doubles.java @@ -0,0 +1,15 @@ +package lq; + +public class Doubles { + public static final int signum(Double d) { + if (d < 0.0) { + return -1; + } + else if (d > 0.0) { + return 1; + } + else { + return 0; + } + } +} diff --git a/src/lq/QuoteUtil.java b/src/lq/QuoteUtil.java index 37f857b..82ff932 100644 --- a/src/lq/QuoteUtil.java +++ b/src/lq/QuoteUtil.java @@ -89,6 +89,17 @@ public class QuoteUtil { return quotes; } + public static List getQuotesOrderedByTimestampDesc() { + List quotes = getQuotes(); + Collections.sort(quotes, + new Comparator() { + public int compare(Quote q1, Quote q2) { + return q2.getTimestamp().compareTo(q1.getTimestamp()); + } + }); + return quotes; + } + public static void approveQuote(Long id) { PersistenceManager pm = PMF.get().getPersistenceManager(); try { -- cgit v1.2.3