Fix: configuration for account entries listing

This commit is contained in:
2015-10-06 09:04:57 +00:00
parent e302ab986a
commit 7f8a225c82
4 changed files with 46 additions and 5 deletions

View File

@@ -5,9 +5,38 @@
.module('config', [])
.config(config);
config.$inject = ['growlProvider'];
config.$inject = ['$httpProvider', 'growlProvider'];
function config(growlProvider) {
var regexIso8601 = /^(\d{4}|\+\d{6})(?:-(\d{2})(?:-(\d{2})(?:T(\d{2}):(\d{2}):(\d{2})\.(\d{1,})(Z|([\-+])(\d{2}):(\d{2}))?)?)?)?$/;
function convertDateStringsToDates(input) {
// Ignore things that aren't objects.
if (typeof input !== "object") return input;
for (var key in input) {
if (!input.hasOwnProperty(key)) continue;
var value = input[key];
var match;
// Check for string properties which look like dates.
if (typeof value === "string" && (match = value.match(regexIso8601))) {
var milliseconds = Date.parse(match[0])
if (!isNaN(milliseconds)) {
input[key] = new Date(milliseconds);
}
} else if (typeof value === "object") {
// Recurse into object
convertDateStringsToDates(value);
}
}
}
function config($httpProvider, growlProvider) {
$httpProvider.defaults.transformResponse.push(function(responseData){
convertDateStringsToDates(responseData);
return responseData;
});
growlProvider.globalReversedOrder(true);
growlProvider.globalTimeToLive(5000);
growlProvider.globalDisableCountDown(true);