James Moger
2012-11-28 b718540114103aaad2fd2554745fdb61d1e6cd17
src/com/gitblit/client/DateCellRenderer.java
@@ -24,8 +24,6 @@
import javax.swing.SwingConstants;
import javax.swing.table.DefaultTableCellRenderer;
import com.gitblit.utils.TimeUtils;
/**
 * Time ago cell renderer with real date tooltip.
 * 
@@ -37,7 +35,7 @@
   private static final long serialVersionUID = 1L;
   private final String pattern;
   public DateCellRenderer(String pattern, Color foreground) {
      this.pattern = (pattern == null ? "yyyy-MM-dd HH:mm" : pattern);
      setForeground(foreground);
@@ -49,18 +47,29 @@
      super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
      if (value instanceof Date) {
         Date date = (Date) value;
         String timeAgo;
         String strDate;
         String title;
         String dateString;
         if (date.getTime() == 0) {
            timeAgo = "--";
            strDate = "never";
            title = "--";
            dateString = "never";
         } else {
            timeAgo = TimeUtils.timeAgo(date);
            strDate = new SimpleDateFormat(pattern).format((Date) value);
            if (date.getTime() - System.currentTimeMillis() > 0) {
               // future
               title = Translation.getTimeUtils().inFuture(date);
            } else {
               // past
               title = Translation.getTimeUtils().timeAgo(date);
            }
            dateString = new SimpleDateFormat(pattern).format((Date) value);
         }
         this.setText(timeAgo);
         this.setToolTipText(strDate);
         if ((System.currentTimeMillis() - date.getTime()) > 10 * 24 * 60 * 60 * 1000L) {
            String tmp = dateString;
            dateString = title;
            title = tmp;
         }
         this.setText(title);
         this.setToolTipText(dateString);
      }
      return this;
   }