Index: lams_build/lib/lams/lams.jar =================================================================== diff -u -r14340cffb8e7ee719460a70a3d0ddf0cebe7930b -r0a0679b24e6381c68c65ae4fd0df911b15e62851 Binary files differ Index: lams_common/src/java/org/lamsfoundation/lams/util/DateUtil.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -r0a0679b24e6381c68c65ae4fd0df911b15e62851 --- lams_common/src/java/org/lamsfoundation/lams/util/DateUtil.java (.../DateUtil.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_common/src/java/org/lamsfoundation/lams/util/DateUtil.java (.../DateUtil.java) (revision 0a0679b24e6381c68c65ae4fd0df911b15e62851) @@ -53,7 +53,16 @@ public static final String SCHEDULE_LESSON_FORMAT = "dd/M/yyyy h:mm a"; public static final String ISO8601_FORMAT = "yyyy-MM-dd'T'HH:mmZ"; public static final String PRETTY_FORMAT = "d MMMM yyyy h:mm:ss a"; - + private static DateFormat dateFormatterTimeAgo; // access via getTimeagoDateFormatter() + + private static DateFormat getTimeagoDateFormatter() { + if (dateFormatterTimeAgo == null) { + dateFormatterTimeAgo = new SimpleDateFormat(DateUtil.ISO8601_FORMAT); + dateFormatterTimeAgo.setTimeZone(TimeZone.getTimeZone("GMT")); + } + return dateFormatterTimeAgo; + } + /** * Convert your local time to Universal Time Coordinator. TODO conversion is not working properly. The returned Date * object still contain server local timezone rather than GMT time zone. @@ -259,4 +268,12 @@ return df.format(value); } + /** + * Convert a date to the ISO08601 format needed for Timeago. Used to return dates through JSON. + */ + public static String convertToStringForTimeagoJSON(Date value) { + return getTimeagoDateFormatter().format(value); + + } + }