From 2eba1f7d508ddc53424ee998dd18571c0ff20ca3 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Sun, 25 Mar 2012 17:20:20 -0400
Subject: [PATCH] Added Lucene search page screenshot to documentation
---
src/com/gitblit/utils/TimeUtils.java | 61 +++++++++++++++++++++++++-----
1 files changed, 50 insertions(+), 11 deletions(-)
diff --git a/src/com/gitblit/utils/TimeUtils.java b/src/com/gitblit/utils/TimeUtils.java
index dbd2d9a..662025b 100644
--- a/src/com/gitblit/utils/TimeUtils.java
+++ b/src/com/gitblit/utils/TimeUtils.java
@@ -15,6 +15,7 @@
*/
package com.gitblit.utils;
+import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
@@ -53,9 +54,10 @@
*/
public static boolean isYesterday(Date date) {
Calendar cal = Calendar.getInstance();
- cal.setTime(date);
- cal.add(Calendar.DATE, 1);
- return (System.currentTimeMillis() - cal.getTimeInMillis()) < ONEDAY;
+ cal.setTime(new Date());
+ cal.add(Calendar.DATE, -1);
+ SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
+ return df.format(cal.getTime()).equals(df.format(date));
}
/**
@@ -143,15 +145,13 @@
* Return the difference in days between now and the date.
*
* @param date
- * @param roundup
* @return days ago
*/
- public static int daysAgo(Date date, boolean roundup) {
- long diff = System.currentTimeMillis() - date.getTime();
+ public static int daysAgo(Date date) {
+ long today = ONEDAY * (System.currentTimeMillis()/ONEDAY);
+ long day = ONEDAY * (date.getTime()/ONEDAY);
+ long diff = today - day;
int days = (int) (diff / ONEDAY);
- if (roundup && (diff % ONEDAY) > 0) {
- days++;
- }
return days;
}
@@ -203,10 +203,16 @@
}
return mins + " min" + (mins > 1 ? "s" : "") + " ago";
} else {
+ int days = daysAgo(date);
if (css) {
- return "age2";
+ if (days <= 7) {
+ return "age2";
+ } if (days <= 30) {
+ return "age3";
+ } else {
+ return "age4";
+ }
}
- int days = daysAgo(date, true);
if (days < 365) {
if (days <= 30) {
return days + " days ago";
@@ -238,4 +244,37 @@
}
}
}
+
+ /**
+ * Convert a frequency string into minutes.
+ *
+ * @param frequency
+ * @return minutes
+ */
+ public static int convertFrequencyToMinutes(String frequency) {
+ // parse the frequency
+ frequency = frequency.toLowerCase();
+ int mins = 60;
+ if (!StringUtils.isEmpty(frequency)) {
+ try {
+ String str = frequency.trim();
+ if (frequency.indexOf(' ') > -1) {
+ str = str.substring(0, str.indexOf(' ')).trim();
+ }
+ mins = (int) Float.parseFloat(str);
+ } catch (NumberFormatException e) {
+ }
+ if (mins < 5) {
+ mins = 5;
+ }
+ }
+ if (frequency.indexOf("day") > -1) {
+ // convert to minutes
+ mins *= 1440;
+ } else if (frequency.indexOf("hour") > -1) {
+ // convert to minutes
+ mins *= 60;
+ }
+ return mins;
+ }
}
--
Gitblit v1.9.1