aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/js/strftime.js
diff options
context:
space:
mode:
authorPeter Wu2014-07-25 23:28:21 +0200
committerPim van den Berg2014-08-02 12:29:32 +0200
commitb6be82b8edefa452e72ed53391971e53d9dccf83 (patch)
tree01a33ac72f6ef7e6e5c607238bc5e4dd3a8751fe /js/strftime.js
parentsupport php versions without json support and show a warning message (diff)
downloadapt-panopticon_cgp-b6be82b8edefa452e72ed53391971e53d9dccf83.zip
apt-panopticon_cgp-b6be82b8edefa452e72ed53391971e53d9dccf83.tar.gz
apt-panopticon_cgp-b6be82b8edefa452e72ed53391971e53d9dccf83.tar.bz2
apt-panopticon_cgp-b6be82b8edefa452e72ed53391971e53d9dccf83.tar.xz
jsrrdgraph: Fixed jshint warnings/errors
Many fall in the category missing semicolon, but there are legitimate bugs (like throwing an error with an undefined variable, using isInfinite instead of !isFinite or fabs instead of Math.abs). At some places, I moved the variable declarations to avoid duplicate definition warnings. Redundant breaks have been removed (after return / throw). Global variables were implicitly defined in RrdDataFile (which caught my attention) and Base64, these have been made local. Also fixed some whitespace errors. Yay, the consistency. Not all (style) issues are fixed.
Diffstat (limited to 'js/strftime.js')
-rw-r--r--js/strftime.js77
1 files changed, 23 insertions, 54 deletions
diff --git a/js/strftime.js b/js/strftime.js
index 0933c27..b3698c8 100644
--- a/js/strftime.js
+++ b/js/strftime.js
@@ -27,80 +27,57 @@ function strftime (fmt, time)
27 var months = [ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ]; 27 var months = [ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ];
28 var fmonths = [ 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']; 28 var fmonths = [ 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
29 29
30 function pad2 (number) 30 function pad2 (number)
31 { 31 {
32 return (number < 10 ? '0' : '') + number 32 return (number < 10 ? '0' : '') + number;
33 }; 33 }
34 34
35 function pad3(number) 35 function pad3(number)
36 { 36 {
37 return (number < 10 ? '00' : number < 100 ? '0' : '') + number 37 return (number < 10 ? '00' : number < 100 ? '0' : '') + number;
38 }; 38 }
39 39
40 function lpad (str, padString, length) 40 function format(match, opt)
41 {
42 while (str.length < length)
43 str = padString + str;
44 return str;
45 };
46
47 function format(match, opt)
48 { 41 {
49 if (match === '%%') return '%'; 42 if (match === '%%') return '%';
50 43
51 switch (opt) { 44 switch (opt) {
52 case 'a': 45 case 'a':
53 return days[d.getDay()]; 46 return days[d.getDay()];
54 break;
55 case 'A': 47 case 'A':
56 return fdays[d.getDay()]; 48 return fdays[d.getDay()];
57 break;
58 case 'b': 49 case 'b':
59 return months[d.getMonth()]; 50 return months[d.getMonth()];
60 break;
61 case 'B': 51 case 'B':
62 return fmonths[d.getMonth()]; 52 return fmonths[d.getMonth()];
63 break;
64 case 'c': 53 case 'c':
65 return d.toLocaleString(); 54 return d.toLocaleString();
66 break;
67 case 'd': 55 case 'd':
68 return pad2(d.getDate()); 56 return pad2(d.getDate());
69 break;
70 case 'H': 57 case 'H':
71 return pad2(d.getHours()); 58 return pad2(d.getHours());
72 break; 59 case 'I':
73 case 'I':
74 var hours = d.getHours()%12; 60 var hours = d.getHours()%12;
75 return pad2(hours === 0 ? 12 : hours); 61 return pad2(hours === 0 ? 12 : hours);
76 break;
77 case 'j': 62 case 'j':
78 var d01 = new Date (d.getFullYear(), 0, 1); 63 var d01 = new Date (d.getFullYear(), 0, 1);
79 return pad3(Math.ceil((d.getTime()-d01.getTime())/86400000)+1); 64 return pad3(Math.ceil((d.getTime()-d01.getTime())/86400000)+1);
80 break; 65 case 'm':
81 case 'm':
82 return pad2(d.getMonth()); 66 return pad2(d.getMonth());
83 break;
84 case 'M': 67 case 'M':
85 return pad2(d.getMinutes()); 68 return pad2(d.getMinutes());
86 break;
87 case 'p': 69 case 'p':
88 return d.getHours() >= 12 ? 'PM' : 'AM'; 70 return d.getHours() >= 12 ? 'PM' : 'AM';
89 break;
90 case 's': 71 case 's':
91 return pad2(d.getSeconds()); 72 return pad2(d.getSeconds());
92 break;
93 case 'S': 73 case 'S':
94 return d.getTime()/1000; 74 return d.getTime()/1000;
95 break;
96 case 'u': 75 case 'u':
97 return d.getDay() === 0 ? 7 : d.getDay(); 76 return d.getDay() === 0 ? 7 : d.getDay();
98 break; 77 case 'U':
99 case 'U':
100 var d01 = new Date(d.getFullYear(),0,1); 78 var d01 = new Date(d.getFullYear(),0,1);
101 return pad2(Math.round((Math.ceil((d.getTime()-d01.getTime())/86400000)+1 + 6 - d.getDay())/7)); 79 return pad2(Math.round((Math.ceil((d.getTime()-d01.getTime())/86400000)+1 + 6 - d.getDay())/7));
102 break; 80 case 'V':
103 case 'V':
104 var d01 = new Date(d.getFullYear(), 0, 1); 81 var d01 = new Date(d.getFullYear(), 0, 1);
105 var w = Math.round((Math.ceil((d.getTime()-d01.getTime())/86400000)+1 + 7 - (d.getDay() === 0 ? 7 : d.getDay()))/7); 82 var w = Math.round((Math.ceil((d.getTime()-d01.getTime())/86400000)+1 + 7 - (d.getDay() === 0 ? 7 : d.getDay()))/7);
106 var d31 = new Date(d.getFullYear(), 11, 31); 83 var d31 = new Date(d.getFullYear(), 11, 31);
@@ -115,32 +92,24 @@ function strftime (fmt, time)
115 if (w === 53 && d31.getDay() < 4) w = 1; 92 if (w === 53 && d31.getDay() < 4) w = 1;
116 } 93 }
117 return pad2(w); 94 return pad2(w);
118 break;
119 case 'w': 95 case 'w':
120 return d.getDay(); 96 return d.getDay();
121 break; 97 case 'W':
122 case 'W': 98 var d01 = new Date(d.getFullYear(),0,1);
123 var d01 = new Date(d.getFullYear(),0,1);
124 return pad2(Math.round((Math.ceil((d.getTime()-d01.getTime())/86400000)+1 + 7 - (d.getDay() === 0 ? 7 : d.getDay()))/7)); 99 return pad2(Math.round((Math.ceil((d.getTime()-d01.getTime())/86400000)+1 + 7 - (d.getDay() === 0 ? 7 : d.getDay()))/7));
125 break;
126 case 'x': 100 case 'x':
127 return pad2(d.getDate())+'/'+pad2(d.getMonth())+'/'+d.getFullYear() 101 return pad2(d.getDate())+'/'+pad2(d.getMonth())+'/'+d.getFullYear();
128 break;
129 case 'X': 102 case 'X':
130 return pad2(d.getHours())+':'+pad2(d.getMinutes())+':'+pad2(d.getSeconds()); 103 return pad2(d.getHours())+':'+pad2(d.getMinutes())+':'+pad2(d.getSeconds());
131 break; 104 case 'y':
132 case 'y':
133 return pad2(d.getFullYear()%100); 105 return pad2(d.getFullYear()%100);
134 break;
135 case 'Y': 106 case 'Y':
136 return d.getFullYear(); 107 return d.getFullYear();
137 break;
138 case 'Z': 108 case 'Z':
139 return d.toString().replace(/^.*\(([^)]+)\)$/, '$1'); 109 return d.toString().replace(/^.*\(([^)]+)\)$/, '$1');
140 break;
141 default: 110 default:
142 return match; 111 return match;
143 } 112 }
144 }; 113 }
145 return fmt.replace(/%([aAbBcdHIjmMpsSUVwWxXyYZ%])/g, format); 114 return fmt.replace(/%([aAbBcdHIjmMpsSUVwWxXyYZ%])/g, format);
146}; 115}