aboutsummaryrefslogtreecommitdiff
path: root/juick-www/src/main/java/com/mitchellbosecke/pebble/extension/filters/PrettyTimeFilter.java
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2017-05-04 13:15:56 +0300
committerGravatar Vitaly Takmazov2017-05-05 12:07:33 +0300
commit1263d0268707b5505c1eb55796c0664f283818eb (patch)
tree49ae0e0bbecdf6863e65b382c0d17a1498c65ecf /juick-www/src/main/java/com/mitchellbosecke/pebble/extension/filters/PrettyTimeFilter.java
parent9c2dfaa34c93ee5bf24093c95cff7d4b77b4ecb5 (diff)
juick-www: pebble pretty time filter
Diffstat (limited to 'juick-www/src/main/java/com/mitchellbosecke/pebble/extension/filters/PrettyTimeFilter.java')
-rw-r--r--juick-www/src/main/java/com/mitchellbosecke/pebble/extension/filters/PrettyTimeFilter.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/juick-www/src/main/java/com/mitchellbosecke/pebble/extension/filters/PrettyTimeFilter.java b/juick-www/src/main/java/com/mitchellbosecke/pebble/extension/filters/PrettyTimeFilter.java
new file mode 100644
index 00000000..bbe31bb7
--- /dev/null
+++ b/juick-www/src/main/java/com/mitchellbosecke/pebble/extension/filters/PrettyTimeFilter.java
@@ -0,0 +1,33 @@
+package com.mitchellbosecke.pebble.extension.filters;
+
+import com.juick.util.PrettyTimeFormatter;
+import com.mitchellbosecke.pebble.extension.Filter;
+import com.mitchellbosecke.pebble.template.EvaluationContext;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+
+/**
+ * Created by vitalyster on 04.05.2017.
+ */
+public class PrettyTimeFilter implements Filter {
+
+ PrettyTimeFormatter formatter = new PrettyTimeFormatter();
+
+ @Override
+ public Object apply(Object input, Map<String, Object> args) {
+ if (input instanceof Date) {
+ EvaluationContext context = (EvaluationContext) args.get("_context");
+ Locale locale = context.getLocale();
+ return formatter.format(locale, (Date)input);
+ }
+ throw new IllegalArgumentException("invalid input");
+ }
+
+ @Override
+ public List<String> getArgumentNames() {
+ return null;
+ }
+}