145
145
public static String since(Date date) {
146
return since(date, false);
148
public static String since(Date date, Boolean stopAtMonth) {
146
149
Date now = new Date();
147
150
if (now.before(date)) {
150
153
long delta = (now.getTime() - date.getTime()) / 1000;
151
154
if (delta < 60) {
152
return Messages.get("since.seconds", delta);
155
return Messages.get("since.seconds", delta, pluralize(delta));
154
157
if (delta < 60 * 60) {
155
return Messages.get("since.minutes", delta / 60);
158
long minutes = delta / 60;
159
return Messages.get("since.minutes", minutes, pluralize(minutes));
157
161
if (delta < 24 * 60 * 60) {
158
return Messages.get("since.hours", delta / (60 * 60));
162
long hours = delta / (60 * 60);
163
return Messages.get("since.hours", hours, pluralize(hours));
160
165
if (delta < 30 * 24 * 60 * 60) {
161
return Messages.get("since.days", delta / (24 * 60 * 60));
166
long days = delta / (24 * 60 * 60);
167
return Messages.get("since.days", days, pluralize(days));
171
return asdate(date.getTime(), Messages.get("since.format"));
163
173
if (delta < 365 * 24 * 60 * 60) {
164
return Messages.get("since.months", delta / (30 * 24 * 60 * 60));
174
long months = delta / (30 * 24 * 60 * 60);
175
return Messages.get("since.months", months, pluralize(months));
166
return Messages.get("since.years", delta / (365 * 24 * 60 * 60));
177
long years = delta / (365 * 24 * 60 * 60);
178
return Messages.get("since.years", years, pluralize(years));
169
181
public static String asdate(Long timestamp, String pattern) {