aboutsummaryrefslogtreecommitdiffstats
path: root/i18n/src/converter.js
diff options
context:
space:
mode:
Diffstat (limited to 'i18n/src/converter.js')
-rw-r--r--i18n/src/converter.js60
1 files changed, 60 insertions, 0 deletions
diff --git a/i18n/src/converter.js b/i18n/src/converter.js
new file mode 100644
index 00000000..586bdb95
--- /dev/null
+++ b/i18n/src/converter.js
@@ -0,0 +1,60 @@
+/**
+ * after obtaining data from closure files, use converter to massage the data into the formats
+ * we want
+ */
+exports.convertDatetimeData = convertDatetimeData;
+exports.convertNumberData = convertNumberData;
+
+
+require.paths.push(__dirname);
+
+
+var parsePattern = require('parser').parsePattern;
+
+
+function convertNumberData(dataObj, currencySymbols) {
+ var numberFormats = {},
+
+ numberFormats = {
+ DECIMAL_SEP: dataObj.DECIMAL_SEP,
+ GROUP_SEP: dataObj.GROUP_SEP,
+ PATTERNS: [parsePattern(dataObj.DECIMAL_PATTERN),
+ parsePattern(dataObj.CURRENCY_PATTERN)]
+ }
+
+ if (currencySymbols[dataObj.DEF_CURRENCY_CODE]) {
+ numberFormats.CURRENCY_SYM = currencySymbols[dataObj.DEF_CURRENCY_CODE][1];
+ } else {
+ if (dataObj.DEF_CURRENCY_CODE == 'MTL') {
+ numberFormats.CURRENCY_SYM = '₤'; //for some reason this is missing in closure
+ } else {
+ // if there is no corresponding currency symbol, just use currency code.
+ var code = numberFormats.CURRENCY_SYM = dataObj.DEF_CURRENCY_CODE;
+ console.log(code +' has no currency symbol in closure, used ' + code + ' instead!');
+ }
+ }
+ return numberFormats;
+}
+
+
+function convertDatetimeData(dataObj) {
+ var datetimeFormats = {};
+
+ datetimeFormats.MONTH = dataObj.MONTHS;
+ datetimeFormats.SHORTMONTH = dataObj.SHORTMONTHS;
+ datetimeFormats.DAY = dataObj.WEEKDAYS;
+ datetimeFormats.SHORTDAY = dataObj.SHORTWEEKDAYS;
+ datetimeFormats.AMPMS = dataObj.AMPMS;
+
+
+ datetimeFormats.medium = dataObj.DATEFORMATS[2] + ' ' + dataObj.TIMEFORMATS[2];
+ datetimeFormats.short = dataObj.DATEFORMATS[3] + ' ' + dataObj.TIMEFORMATS[3];
+ datetimeFormats.fullDate = dataObj.DATEFORMATS[0];
+ datetimeFormats.longDate = dataObj.DATEFORMATS[1];
+ datetimeFormats.mediumDate = dataObj.DATEFORMATS[2];
+ datetimeFormats.shortDate = dataObj.DATEFORMATS[3];
+ datetimeFormats.mediumTime = dataObj.TIMEFORMATS[2];
+ datetimeFormats.shortTime = dataObj.TIMEFORMATS[3];
+
+ return datetimeFormats;
+}