/ajax/scripts/units.js
JavaScript | 73 lines | 54 code | 15 blank | 4 comment | 16 complexity | 12f4c9c9bf895401703c6ac74cc31cb4 MD5 | raw file
- /*==================================================
- * Default Unit
- *==================================================
- */
-
- SimileAjax.NativeDateUnit = new Object();
-
- SimileAjax.NativeDateUnit.makeDefaultValue = function() {
- return new Date();
- };
-
- SimileAjax.NativeDateUnit.cloneValue = function(v) {
- return new Date(v.getTime());
- };
- SimileAjax.NativeDateUnit.getParser = function(format) {
- if (typeof format == "string") {
- format = format.toLowerCase();
- }
-
- var parser = (format == "iso8601" || format == "iso 8601") ?
- SimileAjax.DateTime.parseIso8601DateTime :
- SimileAjax.DateTime.parseGregorianDateTime;
-
- return function(d) {
- if (typeof d != 'undefined' && typeof d.toUTCString == "function") {
- return d;
- } else {
- return parser(d);
- }
- };
- };
-
- SimileAjax.NativeDateUnit.parseFromObject = function(o) {
- return SimileAjax.DateTime.parseGregorianDateTime(o);
- };
-
- SimileAjax.NativeDateUnit.toNumber = function(v) {
- return v.getTime();
- };
-
- SimileAjax.NativeDateUnit.fromNumber = function(n) {
- return new Date(n);
- };
-
- SimileAjax.NativeDateUnit.compare = function(v1, v2) {
- var n1, n2;
- if (typeof v1 == "object") {
- n1 = v1.getTime();
- } else {
- n1 = Number(v1);
- }
- if (typeof v2 == "object") {
- n2 = v2.getTime();
- } else {
- n2 = Number(v2);
- }
-
- return n1 - n2;
- };
-
- SimileAjax.NativeDateUnit.earlier = function(v1, v2) {
- return SimileAjax.NativeDateUnit.compare(v1, v2) < 0 ? v1 : v2;
- };
-
- SimileAjax.NativeDateUnit.later = function(v1, v2) {
- return SimileAjax.NativeDateUnit.compare(v1, v2) > 0 ? v1 : v2;
- };
-
- SimileAjax.NativeDateUnit.change = function(v, n) {
- return new Date(v.getTime() + n);
- };
-