mirror of
https://github.com/karl0ss/homepage.git
synced 2025-05-02 13:33:40 +01:00
JDownloader Widget - Add Total Queue and Remaining In Queue (#1612)
undefined
This commit is contained in:
parent
af00e44550
commit
8df11acbe8
@ -655,8 +655,9 @@
|
|||||||
"updates": "Updates"
|
"updates": "Updates"
|
||||||
},
|
},
|
||||||
"jdownloader": {
|
"jdownloader": {
|
||||||
"downloadCount": "Queue Count",
|
"downloadCount": "Queue",
|
||||||
"downloadQueueSize": "Queue Size",
|
"downloadBytesRemaining": "Remaining",
|
||||||
"downloadSpeed": "Download Speed"
|
"downloadTotalBytes": "Size",
|
||||||
|
"downloadSpeed": "Speed"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,8 @@ export default function Component({ service }) {
|
|||||||
return (
|
return (
|
||||||
<Container service={service}>
|
<Container service={service}>
|
||||||
<Block label="jdownloader.downloadCount" />
|
<Block label="jdownloader.downloadCount" />
|
||||||
<Block label="jdownloader.downloadQueueSize" />
|
<Block label="jdownloader.downloadTotalBytes" />
|
||||||
|
<Block label="jdownloader.downloadBytesRemaining" />
|
||||||
<Block label="jdownloader.downloadSpeed" />
|
<Block label="jdownloader.downloadSpeed" />
|
||||||
</Container>
|
</Container>
|
||||||
);
|
);
|
||||||
@ -30,7 +31,8 @@ export default function Component({ service }) {
|
|||||||
return (
|
return (
|
||||||
<Container service={service}>
|
<Container service={service}>
|
||||||
<Block label="jdownloader.downloadCount" value={t("common.number", { value: jdownloaderData.downloadCount })} />
|
<Block label="jdownloader.downloadCount" value={t("common.number", { value: jdownloaderData.downloadCount })} />
|
||||||
<Block label="jdownloader.downloadQueueSize" value={t("common.bytes", { value: jdownloaderData.totalBytes })} />
|
<Block label="jdownloader.downloadTotalBytes" value={t("common.bytes", { value: jdownloaderData.totalBytes })} />
|
||||||
|
<Block label="jdownloader.downloadBytesRemaining" value={t("common.bytes", { value: jdownloaderData.bytesRemaining })} />
|
||||||
<Block label="jdownloader.downloadSpeed" value={t("common.byterate", { value: jdownloaderData.totalSpeed })} />
|
<Block label="jdownloader.downloadSpeed" value={t("common.byterate", { value: jdownloaderData.totalSpeed })} />
|
||||||
</Container>
|
</Container>
|
||||||
);
|
);
|
||||||
|
@ -28,7 +28,7 @@ async function getWidget(req) {
|
|||||||
|
|
||||||
async function login(loginSecret, deviceSecret, params) {
|
async function login(loginSecret, deviceSecret, params) {
|
||||||
const rid = uniqueRid();
|
const rid = uniqueRid();
|
||||||
const path = `/my/connect?${querystring.stringify({...params, rid})}`;
|
const path = `/my/connect?${querystring.stringify({ ...params, rid })}`;
|
||||||
|
|
||||||
const signature = crypto
|
const signature = crypto
|
||||||
.createHmac('sha256', loginSecret)
|
.createHmac('sha256', loginSecret)
|
||||||
@ -64,7 +64,7 @@ async function login(loginSecret, deviceSecret, params) {
|
|||||||
|
|
||||||
async function getDevice(serverEncryptionToken, deviceName, params) {
|
async function getDevice(serverEncryptionToken, deviceName, params) {
|
||||||
const rid = uniqueRid();
|
const rid = uniqueRid();
|
||||||
const path = `/my/listdevices?${querystring.stringify({...params, rid})}`;
|
const path = `/my/listdevices?${querystring.stringify({ ...params, rid })}`;
|
||||||
const signature = crypto
|
const signature = crypto
|
||||||
.createHmac('sha256', serverEncryptionToken)
|
.createHmac('sha256', serverEncryptionToken)
|
||||||
.update(path)
|
.update(path)
|
||||||
@ -100,7 +100,7 @@ function createBody(rid, query, params) {
|
|||||||
rid,
|
rid,
|
||||||
url: query
|
url: query
|
||||||
};
|
};
|
||||||
return params ? {...baseBody, params: [JSON.stringify(params)] } : baseBody;
|
return params ? { ...baseBody, params: [JSON.stringify(params)] } : baseBody;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function queryPackages(deviceEncryptionToken, deviceId, sessionToken, params) {
|
async function queryPackages(deviceEncryptionToken, deviceId, sessionToken, params) {
|
||||||
@ -135,8 +135,8 @@ export default async function jdownloaderProxyHandler(req, res) {
|
|||||||
return res.status(400).json({ error: "Invalid proxy service type" });
|
return res.status(400).json({ error: "Invalid proxy service type" });
|
||||||
}
|
}
|
||||||
logger.debug("Getting data from JDRss API");
|
logger.debug("Getting data from JDRss API");
|
||||||
const {username} = widget
|
const { username } = widget
|
||||||
const {password} = widget
|
const { password } = widget
|
||||||
|
|
||||||
const appKey = "homepage"
|
const appKey = "homepage"
|
||||||
const loginSecret = sha256(`${username}${password}server`)
|
const loginSecret = sha256(`${username}${password}server`)
|
||||||
@ -171,17 +171,22 @@ export default async function jdownloaderProxyHandler(req, res) {
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
let bytesRemaining = 0;
|
||||||
let totalBytes = 0;
|
let totalBytes = 0;
|
||||||
let totalSpeed = 0;
|
let totalSpeed = 0;
|
||||||
packageStatus.forEach(file => {
|
packageStatus.forEach(file => {
|
||||||
totalBytes += file.bytesTotal;
|
totalBytes += file.bytesTotal;
|
||||||
|
if (file.finished !== true) {
|
||||||
|
bytesRemaining += file.bytesTotal;
|
||||||
if (file.speed) {
|
if (file.speed) {
|
||||||
totalSpeed += file.speed;
|
totalSpeed += file.speed;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const data = {
|
const data = {
|
||||||
downloadCount: packageStatus.length,
|
downloadCount: packageStatus.length,
|
||||||
|
bytesRemaining,
|
||||||
totalBytes,
|
totalBytes,
|
||||||
totalSpeed
|
totalSpeed
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user