diff options
Diffstat (limited to 'juick-core/src/main/java/com')
-rw-r--r-- | juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java b/juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java index c6e9022a..d75365e0 100644 --- a/juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java +++ b/juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java @@ -1,9 +1,16 @@ package com.juick.formatters; +import org.apache.commons.lang3.StringUtils; +import org.ocpsoft.prettytime.PrettyTime; + +import java.util.Locale; + /** * Created by vitalyster on 12.10.2016. */ public class PlainTextFormatter { + static PrettyTime pt = new PrettyTime(new Locale("ru")); + public static String formatPost(com.juick.Message jmsg) { StringBuilder sb = new StringBuilder(); boolean isReply = jmsg.getRid() > 0; @@ -17,6 +24,17 @@ public class PlainTextFormatter { return sb.toString(); } + public static String formatPostSummary(com.juick.Message m) { + int cropLength = 384; + String timeAgo = pt.format(m.getDate()); + String repliesCount = m.getReplies() == 1 ? "; 1 reply" : m.getReplies() == 0 ? "" + : String.format("; %d replies", m.getReplies()); + String txt = m.getText().length() >= cropLength ? + StringUtils.substring(m.getText(), 0, cropLength) + " [...]" : m.getText(); + return String.format("@%s:%s\n%s\n#%d (%s%s) http://juick.com/%d", + m.getUser().getName(), m.getTagsString(), txt, m.getMid(), timeAgo, repliesCount, m.getMid()); + } + public static String formatUrl(com.juick.Message jmsg) { if (jmsg.getRid() > 0) { return String.format("https://juick.com/%d#%d", jmsg.getMid(), jmsg.getRid()); |