mirror of
https://github.com/gethomepage/homepage.git
synced 2025-12-05 21:47:48 +01:00
Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6046f7911e | ||
|
|
a9d3873579 | ||
|
|
d402be2b78 | ||
|
|
2ca46b595b | ||
|
|
db2481cf0e | ||
|
|
865206802c | ||
|
|
668779ede1 | ||
|
|
1ca2407256 | ||
|
|
3240b7a169 | ||
|
|
4aeb3882af | ||
|
|
54ccd7ffb0 | ||
|
|
411e24ef94 | ||
|
|
5fecf9baa7 | ||
|
|
bdcd7835ac | ||
|
|
c023b414c1 | ||
|
|
d3f85bf628 | ||
|
|
ba21ae60d7 | ||
|
|
328875d0f5 | ||
|
|
4f3396cf32 |
@@ -30,12 +30,12 @@
|
||||
"placeholder": "Hledat…"
|
||||
},
|
||||
"resources": {
|
||||
"cpu": "PROC",
|
||||
"cpu": "CPU",
|
||||
"total": "Celkem",
|
||||
"free": "Volné",
|
||||
"used": "Využité",
|
||||
"load": "Zatížení",
|
||||
"mem": "PAM",
|
||||
"mem": "RAM",
|
||||
"max": "Max.",
|
||||
"uptime": "BĚŽÍ",
|
||||
"months": "měs.",
|
||||
@@ -64,8 +64,8 @@
|
||||
"docker": {
|
||||
"rx": "RX",
|
||||
"tx": "TX",
|
||||
"mem": "PAM",
|
||||
"cpu": "PROC",
|
||||
"mem": "RAM",
|
||||
"cpu": "CPU",
|
||||
"offline": "Offline",
|
||||
"error": "Chyba",
|
||||
"unknown": "Neznámý",
|
||||
@@ -175,7 +175,7 @@
|
||||
"queries": "Dotazy",
|
||||
"blocked": "Blokováno",
|
||||
"gravity": "Gravity",
|
||||
"blocked_percent": "Blokováno %"
|
||||
"blocked_percent": "Blokováno"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Dotazy",
|
||||
@@ -301,14 +301,14 @@
|
||||
"failedLoginsLast24H": "Neúspěšná přihlášení (24h)"
|
||||
},
|
||||
"proxmox": {
|
||||
"mem": "PAM",
|
||||
"cpu": "PROC",
|
||||
"mem": "RAM",
|
||||
"cpu": "CPU",
|
||||
"lxc": "LXC",
|
||||
"vms": "Virtuální Stroje"
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "PROC",
|
||||
"mem": "PAM",
|
||||
"cpu": "CPU",
|
||||
"mem": "RAM",
|
||||
"wait": "Prosím počkejte",
|
||||
"temp": "TEPLOTA",
|
||||
"uptime": "BĚŽÍ",
|
||||
@@ -324,8 +324,8 @@
|
||||
"url": "URL"
|
||||
},
|
||||
"homebridge": {
|
||||
"update_available": "Dostupná aktualizace",
|
||||
"up_to_date": "Aktuální",
|
||||
"update_available": "Dostupná",
|
||||
"up_to_date": "Všechno aktuální",
|
||||
"available_update": "Systém",
|
||||
"updates": "Aktualizace",
|
||||
"child_bridges": "Podřízené můstky",
|
||||
@@ -369,7 +369,7 @@
|
||||
"ping": "Odezva"
|
||||
},
|
||||
"scrutiny": {
|
||||
"passed": "Přijato",
|
||||
"passed": "Úspěšné",
|
||||
"failed": "Neúspěšné",
|
||||
"unknown": "Neznámé"
|
||||
},
|
||||
@@ -461,7 +461,7 @@
|
||||
"proxmoxbackupserver": {
|
||||
"datastore_usage": "Datové úložiště",
|
||||
"failed_tasks_24h": "Neúspěšné úlohy 24h",
|
||||
"cpu_usage": "PROC",
|
||||
"cpu_usage": "CPU",
|
||||
"memory_usage": "Paměť"
|
||||
},
|
||||
"immich": {
|
||||
@@ -494,7 +494,7 @@
|
||||
"people": "Lidé"
|
||||
},
|
||||
"diskstation": {
|
||||
"days": "Dni",
|
||||
"days": "dní",
|
||||
"uptime": "Doba provozu",
|
||||
"volumeAvailable": "K dispozici"
|
||||
},
|
||||
@@ -623,7 +623,7 @@
|
||||
},
|
||||
"evcc": {
|
||||
"watt_hour": "Wh",
|
||||
"pv_power": "Production",
|
||||
"pv_power": "Produkce",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
|
||||
@@ -623,10 +623,10 @@
|
||||
},
|
||||
"evcc": {
|
||||
"watt_hour": "Wh",
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"pv_power": "Παραγωγή",
|
||||
"battery_soc": "Μπαταρία",
|
||||
"grid_power": "Πλέγμα",
|
||||
"home_power": "Κατανάλωση",
|
||||
"charge_power": "Charger"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -623,10 +623,10 @@
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"battery_soc": "Batterie",
|
||||
"grid_power": "Grille",
|
||||
"home_power": "Consommation",
|
||||
"charge_power": "Chargeur",
|
||||
"watt_hour": "Wh"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -622,11 +622,11 @@
|
||||
"requests_failed": "Neuspešnih zahtev"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Proizvodnja",
|
||||
"battery_soc": "Baterija",
|
||||
"grid_power": "Omrežje",
|
||||
"home_power": "Poraba",
|
||||
"charge_power": "Polnilec",
|
||||
"watt_hour": "Wh"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -617,16 +617,16 @@
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "Потоки",
|
||||
"requests": "Поточні запити",
|
||||
"requests_failed": "Невдалі запити"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
"pv_power": "Виробництво",
|
||||
"battery_soc": "Батарея",
|
||||
"grid_power": "Сітка",
|
||||
"home_power": "Споживання",
|
||||
"charge_power": "Зарядний пристрій",
|
||||
"watt_hour": "Вт/год"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -57,7 +57,14 @@ export default async function genericProxyHandler(req, res, map) {
|
||||
}
|
||||
|
||||
if (status >= 400) {
|
||||
logger.debug("HTTP Error %d calling %s//%s%s%s...", status, url.protocol, url.hostname, url.port, url.pathname);
|
||||
logger.debug(
|
||||
"HTTP Error %d calling %s//%s:%s%s...",
|
||||
status,
|
||||
url.protocol,
|
||||
url.hostname,
|
||||
url.port,
|
||||
url.pathname
|
||||
);
|
||||
return res.status(status).json({error: {message: "HTTP Error", url: sanitizeErrorURL(url), resultData}});
|
||||
}
|
||||
|
||||
|
||||
@@ -81,7 +81,13 @@ export async function httpProxy(url, params = {}) {
|
||||
return [status, contentType, data, responseHeaders];
|
||||
}
|
||||
catch (err) {
|
||||
logger.error("Error calling %s//%s%s%s...", constructedUrl.protocol, constructedUrl.hostname, constructedUrl.port, constructedUrl.pathname);
|
||||
logger.error(
|
||||
"Error calling %s//%s:%s%s...",
|
||||
constructedUrl.protocol,
|
||||
constructedUrl.hostname,
|
||||
constructedUrl.port,
|
||||
constructedUrl.pathname
|
||||
);
|
||||
logger.error(err);
|
||||
return [500, "application/json", { error: {message: err?.message ?? "Unknown error", url, rawError: err} }, null];
|
||||
}
|
||||
|
||||
@@ -57,8 +57,23 @@ async function apiCall(widget, endpoint, service) {
|
||||
return { status, contentType, data: null, responseHeaders };
|
||||
}
|
||||
|
||||
const dataDecoded = xml2json(data.toString(), { compact: true });
|
||||
return { status, contentType, data: JSON.parse(dataDecoded.toString()), responseHeaders };
|
||||
let dataDecoded = JSON.parse(xml2json(data.toString(), { compact: true }).toString());
|
||||
|
||||
if (dataDecoded.QDocRoot.authPassed._cdata === '0') {
|
||||
logger.error("QNAP API rejected the request, attempting to obtain new session token");
|
||||
key = await login(widget, service);
|
||||
apiUrl = new URL(formatApiCall(`${endpoint}&sid=${key}`, widget));
|
||||
[status, contentType, data, responseHeaders] = await httpProxy(apiUrl);
|
||||
|
||||
if (status !== 200) {
|
||||
logger.error("Error getting data from QNAP: %s status %d. Data: %s", apiUrl, status, data);
|
||||
return { status, contentType, data: null, responseHeaders };
|
||||
}
|
||||
|
||||
dataDecoded = JSON.parse(xml2json(data.toString(), { compact: true }).toString());
|
||||
}
|
||||
|
||||
return { status, contentType, data: dataDecoded, responseHeaders };
|
||||
}
|
||||
|
||||
export default async function qnapProxyHandler(req, res) {
|
||||
|
||||
@@ -32,4 +32,27 @@ module.exports = {
|
||||
},
|
||||
},
|
||||
plugins: [tailwindForms, tailwindScrollbars],
|
||||
};
|
||||
// always include these in build as classes are dynamically constructed
|
||||
safelist: [
|
||||
'backdrop-blur',
|
||||
'backdrop-blur-sm',
|
||||
'backdrop-blur-md',
|
||||
'backdrop-blur-xl',
|
||||
'backdrop-saturate-0',
|
||||
'backdrop-saturate-50',
|
||||
'backdrop-saturate-100',
|
||||
'backdrop-saturate-150',
|
||||
'backdrop-saturate-200',
|
||||
'backdrop-brightness-0',
|
||||
'backdrop-brightness-50',
|
||||
'backdrop-brightness-75',
|
||||
'backdrop-brightness-90',
|
||||
'backdrop-brightness-95',
|
||||
'backdrop-brightness-100',
|
||||
'backdrop-brightness-105',
|
||||
'backdrop-brightness-110',
|
||||
'backdrop-brightness-125',
|
||||
'backdrop-brightness-150',
|
||||
'backdrop-brightness-200',
|
||||
],
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user