Last sessions view
This commit is contained in:
27
utility/PromiseRequest.js
Normal file
27
utility/PromiseRequest.js
Normal file
@@ -0,0 +1,27 @@
|
||||
|
||||
let request = obj => {
|
||||
return new Promise((resolve, reject) => {
|
||||
let xhr = new XMLHttpRequest();
|
||||
xhr.open(obj.method || "GET", obj.url);
|
||||
if (obj.headers) {
|
||||
Object.keys(obj.headers).forEach(key => {
|
||||
xhr.setRequestHeader(key, obj.headers[key]);
|
||||
});
|
||||
}
|
||||
if(obj.responseType) {
|
||||
xhr.responseType = obj.responseType;
|
||||
}
|
||||
|
||||
xhr.onload = () => {
|
||||
if (xhr.status >= 200 && xhr.status < 300) {
|
||||
resolve(xhr.response);
|
||||
} else {
|
||||
reject(xhr.statusText);
|
||||
}
|
||||
};
|
||||
xhr.onerror = () => reject(xhr.statusText);
|
||||
xhr.send(obj.body);
|
||||
});
|
||||
};
|
||||
|
||||
export default request;
|
||||
45
utility/TimeUtils.js
Normal file
45
utility/TimeUtils.js
Normal file
@@ -0,0 +1,45 @@
|
||||
|
||||
import moment from 'moment/min/moment-with-locales';
|
||||
|
||||
|
||||
function timeSince(timeStamp, lang = 'de') {
|
||||
moment.locale(lang);
|
||||
|
||||
const now = Math.floor((new Date()).getTime() / 1000);
|
||||
const secondsPast = now - timeStamp;
|
||||
if (secondsPast <= 6 * 3600) {
|
||||
return moment().seconds(-secondsPast).fromNow();
|
||||
}
|
||||
else{
|
||||
const timeStampDate = new Date(timeStamp * 1000);
|
||||
const dateNow = new Date();
|
||||
|
||||
const timeStampMoment = moment.unix(timeStamp);
|
||||
|
||||
let dateStr = "";
|
||||
|
||||
if (timeStampDate.getDate() == dateNow.getDate())
|
||||
dateStr = "Heute, " + timeStampMoment.format("HH:mm");
|
||||
else if (timeStampDate.getDate() + 1 == dateNow.getDate())
|
||||
dateStr = "Gestern, " + timeStampMoment.format("HH:mm");
|
||||
else {
|
||||
dateStr = timeStampMoment.format("ddd, DD.MM.YY um HH:mm");
|
||||
}
|
||||
return dateStr;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
const toTimeStr = seconds => {
|
||||
let minuteStr = String(Math.floor(seconds / 60));
|
||||
if (minuteStr.length < 2)
|
||||
minuteStr = "0" + minuteStr;
|
||||
let secondStr = String(Math.floor(seconds % 60));
|
||||
if (secondStr.length < 2)
|
||||
secondStr = "0" + secondStr;
|
||||
return minuteStr + ":" + secondStr;
|
||||
}
|
||||
|
||||
|
||||
export { toTimeStr, timeSince };
|
||||
Reference in New Issue
Block a user