57 lines
1.4 KiB
JavaScript
57 lines
1.4 KiB
JavaScript
Handlebars.registerHelper("to_date", function (timestamp) {
|
|
return new Date(timestamp * 1000).toLocaleString();
|
|
});
|
|
|
|
tstor.servers = {
|
|
_template: null,
|
|
|
|
_getTemplate: function () {
|
|
if (this._template != null) {
|
|
return this._template;
|
|
}
|
|
|
|
const tTemplate = fetch("/assets/templates/servers.html")
|
|
.then((response) => {
|
|
if (response.ok) {
|
|
return response.text();
|
|
} else {
|
|
tstor.message.error(
|
|
"Error getting data from server. Response: " + response.status
|
|
);
|
|
}
|
|
})
|
|
.then((t) => {
|
|
return Handlebars.compile(t);
|
|
})
|
|
.catch((error) => {
|
|
tstor.message.error("Error getting servers template: " + error.message);
|
|
});
|
|
|
|
this._template = tTemplate;
|
|
return tTemplate;
|
|
},
|
|
|
|
_getRoutesJson: function () {
|
|
return fetch("/api/servers")
|
|
.then(function (response) {
|
|
if (response.ok) {
|
|
return response.json();
|
|
} else {
|
|
tstor.message.error(
|
|
"Error getting data from server. Response: " + response.status
|
|
);
|
|
}
|
|
})
|
|
.catch(function (error) {
|
|
tstor.message.error("Error getting status info: " + error.message);
|
|
});
|
|
},
|
|
|
|
loadView: function () {
|
|
this._getTemplate().then((t) =>
|
|
this._getRoutesJson().then((routes) => {
|
|
document.getElementById("template_target").innerHTML = t(routes);
|
|
})
|
|
);
|
|
},
|
|
};
|