Bug:Fix file validation issue
[vnfsdk/refrepo.git] / vnfmarket / src / main / webapp / vnfmarket / node_modules / log4js / lib / date_format.js
1 "use strict";
2 exports.ISO8601_FORMAT = "yyyy-MM-dd hh:mm:ss.SSS";
3 exports.ISO8601_WITH_TZ_OFFSET_FORMAT = "yyyy-MM-ddThh:mm:ssO";
4 exports.DATETIME_FORMAT = "dd MM yyyy hh:mm:ss.SSS";
5 exports.ABSOLUTETIME_FORMAT = "hh:mm:ss.SSS";
6
7 function padWithZeros(vNumber, width) {
8   var numAsString = vNumber + "";
9   while (numAsString.length < width) {
10     numAsString = "0" + numAsString;
11   }
12   return numAsString;
13 }
14
15 function addZero(vNumber) {
16   return padWithZeros(vNumber, 2);
17 }
18
19 /**
20  * Formats the TimeOffest
21  * Thanks to http://www.svendtofte.com/code/date_format/
22  * @private
23  */
24 function offset(timezoneOffset) {
25   // Difference to Greenwich time (GMT) in hours
26   var os = Math.abs(timezoneOffset);
27   var h = String(Math.floor(os/60));
28   var m = String(os%60);
29   if (h.length == 1) {
30     h = "0" + h;
31   }
32   if (m.length == 1) {
33     m = "0" + m;
34   }
35   return timezoneOffset < 0 ? "+"+h+m : "-"+h+m;
36 }
37
38 exports.asString = function(/*format,*/ date, timezoneOffset) {
39   /*jshint -W071 */
40   var format = exports.ISO8601_FORMAT;
41   if (typeof(date) === "string") {
42     format = arguments[0];
43     date = arguments[1];
44     timezoneOffset = arguments[2];
45   }
46   // make the date independent of the system timezone by working with UTC
47   if (timezoneOffset === undefined) {
48     timezoneOffset = date.getTimezoneOffset();
49   }
50   date.setUTCMinutes(date.getUTCMinutes() - timezoneOffset);
51   var vDay = addZero(date.getUTCDate());
52   var vMonth = addZero(date.getUTCMonth()+1);
53   var vYearLong = addZero(date.getUTCFullYear());
54   var vYearShort = addZero(date.getUTCFullYear().toString().substring(2,4));
55   var vYear = (format.indexOf("yyyy") > -1 ? vYearLong : vYearShort);
56   var vHour  = addZero(date.getUTCHours());
57   var vMinute = addZero(date.getUTCMinutes());
58   var vSecond = addZero(date.getUTCSeconds());
59   var vMillisecond = padWithZeros(date.getUTCMilliseconds(), 3);
60   var vTimeZone = offset(timezoneOffset);
61   date.setUTCMinutes(date.getUTCMinutes() + timezoneOffset);
62   var formatted = format
63     .replace(/dd/g, vDay)
64     .replace(/MM/g, vMonth)
65     .replace(/y{1,4}/g, vYear)
66     .replace(/hh/g, vHour)
67     .replace(/mm/g, vMinute)
68     .replace(/ss/g, vSecond)
69     .replace(/SSS/g, vMillisecond)
70     .replace(/O/g, vTimeZone);
71   return formatted;
72
73 };
74 /*jshint +W071 */