mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-08-20 21:33:27 -07:00
set Share Limit Action via webui
This commit is contained in:
parent
bd7915377c
commit
3b7d6adc5f
1 changed files with 6 additions and 2 deletions
|
@ -1362,18 +1362,22 @@ void TorrentsController::setDownloadLimitAction()
|
||||||
|
|
||||||
void TorrentsController::setShareLimitsAction()
|
void TorrentsController::setShareLimitsAction()
|
||||||
{
|
{
|
||||||
requireParams({u"hashes"_s, u"ratioLimit"_s, u"seedingTimeLimit"_s, u"inactiveSeedingTimeLimit"_s});
|
requireParams({u"hashes"_s, u"ratioLimit"_s, u"seedingTimeLimit"_s, u"inactiveSeedingTimeLimit"_s, u"shareLimitAction"_s});
|
||||||
|
|
||||||
const qreal ratioLimit = params()[u"ratioLimit"_s].toDouble();
|
const qreal ratioLimit = params()[u"ratioLimit"_s].toDouble();
|
||||||
const qlonglong seedingTimeLimit = params()[u"seedingTimeLimit"_s].toLongLong();
|
const qlonglong seedingTimeLimit = params()[u"seedingTimeLimit"_s].toLongLong();
|
||||||
const qlonglong inactiveSeedingTimeLimit = params()[u"inactiveSeedingTimeLimit"_s].toLongLong();
|
const qlonglong inactiveSeedingTimeLimit = params()[u"inactiveSeedingTimeLimit"_s].toLongLong();
|
||||||
|
const int shareLimitActionParamValue = params()[u"shareLimitAction"_s].toInt();
|
||||||
|
const BitTorrent::ShareLimitAction shareLimitAction = shareLimitActionParamValue >= 0 && shareLimitActionParamValue <= 3 ? static_cast<BitTorrent::ShareLimitAction>(shareLimitActionParamValue) : BitTorrent::ShareLimitAction::Default;
|
||||||
|
|
||||||
const QStringList hashes = params()[u"hashes"_s].split(u'|');
|
const QStringList hashes = params()[u"hashes"_s].split(u'|');
|
||||||
|
|
||||||
applyToTorrents(hashes, [ratioLimit, seedingTimeLimit, inactiveSeedingTimeLimit](BitTorrent::Torrent *const torrent)
|
applyToTorrents(hashes, [ratioLimit, seedingTimeLimit, inactiveSeedingTimeLimit, shareLimitAction](BitTorrent::Torrent *const torrent)
|
||||||
{
|
{
|
||||||
torrent->setRatioLimit(ratioLimit);
|
torrent->setRatioLimit(ratioLimit);
|
||||||
torrent->setSeedingTimeLimit(seedingTimeLimit);
|
torrent->setSeedingTimeLimit(seedingTimeLimit);
|
||||||
torrent->setInactiveSeedingTimeLimit(inactiveSeedingTimeLimit);
|
torrent->setInactiveSeedingTimeLimit(inactiveSeedingTimeLimit);
|
||||||
|
torrent->setShareLimitAction(shareLimitAction);
|
||||||
});
|
});
|
||||||
|
|
||||||
setResult(QString());
|
setResult(QString());
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue