{% extends "analytics/_layouts/tests" %}
{% import "_includes/forms" as forms %}
{% set selectedTab = 'formatting' %}
{% set content %}
{% js %}
var localeDefinition = Analytics.Utils.getLocaleDefinition(AnalyticsCurrencyDefinition);
{% endjs %}
JS Formatting Tests
{% js %}
var formats = Craft.charts.BaseChart.defaults.formats;
var tests = [
{ type: 'string', value: "Hello world!" },
{ type: 'percent', value: 36.7869 },
{ type: 'integer', value: 367869 },
{ type: 'time', value: 3200 },
{ type: 'time', value: 36786 },
{ type: 'currency', value: 36786 },
{ type: 'float', value: 36.7869 },
{ type: 'date', value: '201601' },
{ type: 'date', value: '20160203' },
];
$tests = $('#formatByType');
$.each(tests, function(key, test) {
var output = Analytics.Utils.formatByType(localeDefinition, test.type, test.value);
$test = $('
');
$(''+ test.type +' | ').appendTo($test);
$(''+ test.value +' | ').appendTo($test);
$(''+ output +' | ').appendTo($test);
$test.appendTo($tests);
});
{% endjs %}
D3 Number formatting
{% js %}
var locale = d3.formatLocale(localeDefinition);
var tests = [
{
label: "percentFormat",
value: 19.345,
valueModifier: function(value) {
return value / 100;
},
format: formats.percentFormat,
},
{ label: "currencyFormat", value: 19.34, format: formats.currencyFormat },
{ label: "currencyFormat", value: 1902345.34, format: formats.currencyFormat },
{ label: "decimalFormat", value: 1902345.3412344, format: formats.numberFormat }
];
$table = $('#d3NumberFormatting');
$.each(tests, function(key, test) {
var value = test.value;
if(typeof(test.valueModifier) != 'undefined') {
value = test.valueModifier(value);
}
var formattedValue = locale.format(test.format)(value);
$tr = $('
');
$(''+ test.label +' | ').appendTo($tr);
$(''+ test.format +' | ').appendTo($tr);
$(''+ test.value +' | ').appendTo($tr);
$(''+ formattedValue +' | ').appendTo($tr);
$tr.appendTo($table);
});
{% endjs %}
{% endset %}