Mercurial > hg > extraction-interface
comparison geotemco/lib/simile/ajax/scripts/units.js @ 0:b12c99b7c3f0
commit for previous development
author | Zoe Hong <zhong@mpiwg-berlin.mpg.de> |
---|---|
date | Mon, 19 Jan 2015 17:13:49 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:b12c99b7c3f0 |
---|---|
1 /*================================================== | |
2 * Default Unit | |
3 *================================================== | |
4 */ | |
5 | |
6 SimileAjax.NativeDateUnit = new Object(); | |
7 | |
8 SimileAjax.NativeDateUnit.makeDefaultValue = function() { | |
9 return new Date(); | |
10 }; | |
11 | |
12 SimileAjax.NativeDateUnit.cloneValue = function(v) { | |
13 return new Date(v.getTime()); | |
14 }; | |
15 | |
16 SimileAjax.NativeDateUnit.getParser = function(format) { | |
17 if (typeof format == "string") { | |
18 format = format.toLowerCase(); | |
19 } | |
20 | |
21 var parser = (format == "iso8601" || format == "iso 8601") ? | |
22 SimileAjax.DateTime.parseIso8601DateTime : | |
23 SimileAjax.DateTime.parseGregorianDateTime; | |
24 | |
25 return function(d) { | |
26 if (typeof d != 'undefined' && typeof d.toUTCString == "function") { | |
27 return d; | |
28 } else { | |
29 return parser(d); | |
30 } | |
31 }; | |
32 }; | |
33 | |
34 SimileAjax.NativeDateUnit.parseFromObject = function(o) { | |
35 return SimileAjax.DateTime.parseGregorianDateTime(o); | |
36 }; | |
37 | |
38 SimileAjax.NativeDateUnit.toNumber = function(v) { | |
39 return v.getTime(); | |
40 }; | |
41 | |
42 SimileAjax.NativeDateUnit.fromNumber = function(n) { | |
43 return new Date(n); | |
44 }; | |
45 | |
46 SimileAjax.NativeDateUnit.compare = function(v1, v2) { | |
47 var n1, n2; | |
48 if (typeof v1 == "object") { | |
49 n1 = v1.getTime(); | |
50 } else { | |
51 n1 = Number(v1); | |
52 } | |
53 if (typeof v2 == "object") { | |
54 n2 = v2.getTime(); | |
55 } else { | |
56 n2 = Number(v2); | |
57 } | |
58 | |
59 return n1 - n2; | |
60 }; | |
61 | |
62 SimileAjax.NativeDateUnit.earlier = function(v1, v2) { | |
63 return SimileAjax.NativeDateUnit.compare(v1, v2) < 0 ? v1 : v2; | |
64 }; | |
65 | |
66 SimileAjax.NativeDateUnit.later = function(v1, v2) { | |
67 return SimileAjax.NativeDateUnit.compare(v1, v2) > 0 ? v1 : v2; | |
68 }; | |
69 | |
70 SimileAjax.NativeDateUnit.change = function(v, n) { | |
71 return new Date(v.getTime() + n); | |
72 }; | |
73 |