webui (c++): feature: added labels support. #648

This commit is contained in:
Felipe Barriga Richards 2015-02-26 22:52:38 -03:00 committed by ngosang
parent 9d051ea523
commit 76d93c23b7
4 changed files with 22 additions and 0 deletions

View file

@ -255,6 +255,7 @@ private:
* - "seq_dl": Torrent sequential download state * - "seq_dl": Torrent sequential download state
* - "f_l_piece_prio": Torrent first last piece priority state * - "f_l_piece_prio": Torrent first last piece priority state
* - "force_start": Torrent force start state * - "force_start": Torrent force start state
* - "label": Torrent label
*/ */
QByteArray btjson::getTorrents(QString filter, QString label, QByteArray btjson::getTorrents(QString filter, QString label,
QString sortedColumn, bool reverse, int limit, int offset) QString sortedColumn, bool reverse, int limit, int offset)

View file

@ -396,3 +396,4 @@ void prefjson::setPreferences(const QString& json)
// Save preferences // Save preferences
pref->apply(); pref->apply();
} }

View file

@ -110,6 +110,7 @@ QMap<QString, QMap<QString, WebApplication::Action> > WebApplication::initialize
ADD_ACTION(command, topPrio); ADD_ACTION(command, topPrio);
ADD_ACTION(command, bottomPrio); ADD_ACTION(command, bottomPrio);
ADD_ACTION(command, recheck); ADD_ACTION(command, recheck);
ADD_ACTION(command, setLabel);
ADD_ACTION(version, api); ADD_ACTION(version, api);
ADD_ACTION(version, api_min); ADD_ACTION(version, api_min);
ADD_ACTION(version, qbittorrent); ADD_ACTION(version, qbittorrent);
@ -664,6 +665,24 @@ void WebApplication::action_command_recheck()
torrent->forceRecheck(); torrent->forceRecheck();
} }
void WebApplication::action_command_setLabel()
{
CHECK_URI(0);
CHECK_PARAMETERS("hash" << "label_obj");
QString hash = request().posts["hash"];
QString label_obj = request().posts["label_obj"];
const QVariantMap m = json::fromJson(label_obj).toMap();
if( m.contains("value") ) {
QString label = m["value"].toString();
if (!hash.isEmpty()) {
QTorrentHandle h = QBtSession::instance()->getTorrentHandle(hash);
QBtSession::instance()->setLabel(h, label);
}
}
}
bool WebApplication::isPublicScope() bool WebApplication::isPublicScope()
{ {
return (scope_ == DEFAULT_SCOPE || scope_ == VERSION_INFO); return (scope_ == DEFAULT_SCOPE || scope_ == VERSION_INFO);

View file

@ -86,6 +86,7 @@ private:
void action_command_topPrio(); void action_command_topPrio();
void action_command_bottomPrio(); void action_command_bottomPrio();
void action_command_recheck(); void action_command_recheck();
void action_command_setLabel();
void action_version_api(); void action_version_api();
void action_version_api_min(); void action_version_api_min();
void action_version_qbittorrent(); void action_version_qbittorrent();