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