Parcourir la source

add format_price handlebars helper

tags/2.0.1
Jonathan Cobb il y a 4 ans
Parent
révision
f04e3f5f86
1 fichiers modifiés avec 12 ajouts et 0 suppressions
  1. +12
    -0
      src/main/java/org/cobbzilla/util/handlebars/HandlebarsUtil.java

+ 12
- 0
src/main/java/org/cobbzilla/util/handlebars/HandlebarsUtil.java Voir le fichier

@@ -320,6 +320,18 @@ public class HandlebarsUtil extends AbstractTemplateLoader {
return new Handlebars.SafeString(DateTimeFormat.forPattern(format).withZone(tz).print(Long.valueOf(val.toString().trim())));
});

hb.registerHelper("format_price", (val, options) -> {
if (options.params.length != 2) return die("format_price: Usage: {{format_price amount currencySymbol decimalSymbol}}");
final String currencySymbol = options.param(0);
final String decimalSymbol = options.param(1);
final long amount = Long.parseLong(val.toString());
if (amount % 100 == 0) {
return new Handlebars.SafeString(currencySymbol+(amount/100));
} else {
return new Handlebars.SafeString(currencySymbol+(amount/100)+decimalSymbol+(amount%100 < 10 ? "0"+(amount%100) : amount%100));
}
});

hb.registerHelper("format_float", (val, options) -> {
if (empty(val)) return "";
if (options.params.length > 2) return die("format_float: too many parameters. Usage: {{format_float expr [format] [locale]}}");


Chargement…
Annuler
Enregistrer