users() improved date time parsing
This commit is contained in:
parent
75932fb959
commit
41036d23b9
@ -30,6 +30,7 @@ For major (breaking) changes - version 3 and 2 see end of page.
|
||||
|
||||
| Version | Date | Comment |
|
||||
| -------------- | -------------- | -------- |
|
||||
| 4.14.6 | 2019-08-22 | `users()` improved date time parsing |
|
||||
| 4.14.5 | 2019-08-22 | `fsSize()` fix windows result as number |
|
||||
| 4.14.4 | 2019-07-20 | `verions()` fix pip, pip3 |
|
||||
| 4.14.3 | 2019-07-09 | `system()` sku fix windows |
|
||||
|
||||
@ -83,6 +83,11 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">4.14.6</th>
|
||||
<td>2019-08-22</td>
|
||||
<td><span class="code">users()</span> improved date time parsing</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">4.14.5</th>
|
||||
<td>2019-08-22</td>
|
||||
|
||||
@ -168,7 +168,7 @@
|
||||
<img class="logo" src="assets/logo.png">
|
||||
<div class="title">systeminformation</div>
|
||||
<div class="subtitle"><span id="typed"></span></div>
|
||||
<div class="version">Current Version: <span id="version">4.14.5</span></div>
|
||||
<div class="version">Current Version: <span id="version">4.14.6</span></div>
|
||||
<button class="btn btn-light" onclick="location.href='https://github.com/sebhildebrandt/systeminformation'">View on Github <i class=" fab fa-github"></i></button>
|
||||
</div>
|
||||
<div class="down">
|
||||
|
||||
54
lib/util.js
54
lib/util.js
@ -122,12 +122,36 @@ function decodeEscapeSequence(str, base) {
|
||||
|
||||
function parseTime(t) {
|
||||
t = t.toUpperCase();
|
||||
const parts = t.split(':');
|
||||
let isPM = (parts[1] && (parts[1].toLowerCase().indexOf('pm') > -1) || (parts[1].toLowerCase().indexOf('p.m.') > -1) || (parts[1].toLowerCase().indexOf('p. m.') > -1));
|
||||
let hour = parseInt(parts[0], 10);
|
||||
const min = parseInt(parts[1], 10);
|
||||
hour = isPM && hour < 12 ? hour + 12 : hour;
|
||||
return ('0' + hour).substr(-2) + ':' + ('0' + min).substr(-2);
|
||||
let hour = 0;
|
||||
let min = 0;
|
||||
let parts = t.split(':');
|
||||
if (parts.length >= 2) {
|
||||
let isPM = (parts[1] && (parts[1].toLowerCase().indexOf('pm') > -1) || (parts[1].toLowerCase().indexOf('p.m.') > -1) || (parts[1].toLowerCase().indexOf('p. m.') > -1));
|
||||
hour = parseInt(parts[0], 10);
|
||||
min = parseInt(parts[1], 10);
|
||||
hour = isPM && hour < 12 ? hour + 12 : hour;
|
||||
return ('0' + hour).substr(-2) + ':' + ('0' + min).substr(-2);
|
||||
}
|
||||
let parts = t.split('.');
|
||||
if (parts.length >= 2) {
|
||||
let isPM = (parts[1] && (parts[1].toLowerCase().indexOf('pm') > -1) || (parts[1].toLowerCase().indexOf('p.m.') > -1) || (parts[1].toLowerCase().indexOf('p. m.') > -1) || (parts[1].toLowerCase().indexOf('n') > -1) || (parts[1].toLowerCase().indexOf('ch') > -1) || (parts[1].toLowerCase().indexOf('ös') > -1));
|
||||
hour = parseInt(parts[0], 10);
|
||||
min = parseInt(parts[1], 10);
|
||||
hour = isPM && hour < 12 ? hour + 12 : hour;
|
||||
return ('0' + hour).substr(-2) + ':' + ('0' + min).substr(-2);
|
||||
}
|
||||
let parts = t.split(' ');
|
||||
if (parts.length >= 2) {
|
||||
let isPM = ((t.toLowerCase().indexOf('pm') > -1) || (t.toLowerCase().indexOf('p.m.') > -1) || (t.toLowerCase().indexOf('p. m.') > -1) || (t.toLowerCase().indexOf('n') > -1) || (t.toLowerCase().indexOf('ch') > -1) || (t.toLowerCase().indexOf('ös') > -1));
|
||||
hour = parseInt(parts[0], 10);
|
||||
if (parts[1] === 'h' && parts[2]) {
|
||||
min = parseInt(parts[2], 10);
|
||||
} else {
|
||||
min = parseInt(parts[1], 10);
|
||||
}
|
||||
hour = isPM && hour < 12 ? hour + 12 : hour;
|
||||
return ('0' + hour).substr(-2) + ':' + ('0' + min).substr(-2);
|
||||
}
|
||||
}
|
||||
|
||||
function parseDateTime(dt) {
|
||||
@ -138,10 +162,20 @@ function parseDateTime(dt) {
|
||||
const parts = dt.split(' ');
|
||||
if (parts[0]) {
|
||||
if (parts[0].indexOf('/') >= 0) {
|
||||
// Dateformat: mm/dd/yyyy
|
||||
// Dateformat: mm/dd/yyyy or dd/mm/yyyy or dd/mm/yy or yyyy/mm/dd
|
||||
const dtparts = parts[0].split('/');
|
||||
if (dtparts.length === 3) {
|
||||
result.date = dtparts[2] + '-' + ('0' + dtparts[0]).substr(-2) + '-' + ('0' + dtparts[1]).substr(-2);
|
||||
if (dtparts[0].length === 4) {
|
||||
// Dateformat: yyyy/mm/dd
|
||||
result.date = dtparts[0] + '-' + ('0' + dtparts[1]).substr(-2) + '-' + ('0' + dtparts[2]).substr(-2);
|
||||
} else if (dtparts[2].length === 2) {
|
||||
// Dateformat: dd/mm/yy
|
||||
result.date = '20' + dtparts[2] + '-' + ('0' + dtparts[1]).substr(-2) + '-' + ('0' + dtparts[0]).substr(-2);
|
||||
} else {
|
||||
// Dateformat: mm/dd/yyyy or dd/mm/yyyy
|
||||
result.date = dtparts[2] + '-' + ('0' + dtparts[0]).substr(-2) + '-' + ('0' + dtparts[1]).substr(-2);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
if (parts[0].indexOf('.') >= 0) {
|
||||
@ -153,6 +187,7 @@ function parseDateTime(dt) {
|
||||
}
|
||||
if (parts[0].indexOf('-') >= 0) {
|
||||
// Dateformat: yyyy-mm-dd
|
||||
const isEN = ((dt.toLowerCase().indexOf('pm') > -1) || (t.toLowerCase().indexOf('p.m.') > -1) || (t.toLowerCase().indexOf('p. m.') > -1) || (dt.toLowerCase().indexOf('am') > -1) || (t.toLowerCase().indexOf('a.m.') > -1) || (t.toLowerCase().indexOf('a. m.') > -1));
|
||||
const dtparts = parts[0].split('-');
|
||||
if (dtparts.length === 3) {
|
||||
result.date = dtparts[0] + '-' + ('0' + dtparts[1]).substr(-2) + '-' + ('0' + dtparts[2]).substr(-2);
|
||||
@ -160,7 +195,8 @@ function parseDateTime(dt) {
|
||||
}
|
||||
}
|
||||
if (parts[1]) {
|
||||
let time = parts[1] + (parts[2] ? parts[2] : '');
|
||||
parts.shift();
|
||||
let time = parts.join(' ');
|
||||
result.time = parseTime(time);
|
||||
}
|
||||
return result;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user